局域网中的机器都通过主机共享上网,但要通过验证。现在需要完成如下功能:当某一用户还没有通过验证时,只要他用浏览器发送上网请求,则让他自动登陆到验证界面(在局域网的某台机器上,IP,MAC地址,网址都已知)。现在我能截下该没有通过验证用户发送或接收的数据包(原始的MAC包),要如何修改包的内容而达到以上目的??十分感谢!详细点!!

解决方案 »

  1.   

    修改目的IP,端口,以及将http报文的内容改成目的url,最好自己sniffer下一份验证的数据包,然后依此构造...
      

  2.   

    去掉mac头,tcp头,ip头,取http应用层数据,分析host后的字符串,后面跟的就是目的网址
      

  3.   

    要么通过 SPI hook send, recv 等等函数
    要么就使用 NDIS 过滤驱动来完成
      

  4.   

    关键是IP头!有一个首部检验和,如果我修改目的IP和标识,那么首部检验和也要改,太复杂了,请问实现这个功能真的那么难吗?我已经通过NDIS实现了拦截数据包,可以对数据包进行修改,然后发送,但是现在最大的困惑是应该如何去改,我已经改过很多次了,一次都没成功过!