在局域网中,通过ARP协议来进行IP地址(第三层)与第二层物理地址(即MAC地址)的相互转换。网吧中的一些设备如路由器、装有TCP/IP协议的电脑等都提供ARP缓存表,以提高通信速度。目前很多带有ARP欺骗功能的攻击软件都是利用ARP协议的这个特点来对网络设备进行攻击,通过伪造的MAC与局域网内的IP地址对应,并修改路由器或电脑的ARP缓存表,使得具有合法MAC的电脑无法与IP对应,从而无法通过路由器上网。
在掉线重启路由器后,ARP缓存表会刷新,网络会在短时间内恢复正常,待ARP攻击启动后,又出现断网现象,如此反复,很容易被误断为路由器“死机”,从而使得网吧网管员无法及时采取行动迅速恢复网吧的正常营运。说白一点,就是你要访问网络的时候需要通过一个服务器,但是中毒的主机,就会在中间截住服务器发给你的数据包,并在中间加上他的内容以后再发给你。这样,你要看的网页就会多出来一段代码。
如果是你是单机上网,那么杀一下毒就可以了。如果是局域网上网,那么下面的就是解决办法:
路由器端,将客户机的MAC地址和IP地址一一绑定,没有被绑定的电脑就上不了网,因为中毒的主机要想用ARP攻击,就得不断变化自己的MAC地址来截取和发送数据包。做完这一步基本上已经能解决问题了。下面这转载的这个问题的一些延升。
另外,在局域网中,一般只有两类设备带有ARP缓存,一类是路由器,另一类是上网电脑,也只有这两类设备最容易受到ARP攻击。如同路由器受到ARP攻击时数据包不能到达电脑一样,上网电脑受到ARP攻击时,数据包也不会发送到路由器上,而是发送到一个错误的地方,当然也就无法通过路由器上网了。因此,网吧要对付ARP攻击,除对路由器进行IP与MAC绑定以外,在电脑上进行IP与MAC绑定也必不可少。
ARP攻击之路由器进行的IP与MAC绑定
对路由器进行的IP与MAC绑定前面已经介绍过,在电脑上进行IP与MAC绑定该如何操作呢?其实微软的操作系统中都带有ARP这一命令行程序,在电脑的Windows命令行界面中输入“arp -s +路由器IP如192.168.1.1+路由器LAN口MAC地址”就可以将的路由器IP和MAC绑定到电脑的ARP表中。 若通过Windows命令行界面中输入ARP命令来绑定IP与MAC,电脑每次在重启后都需要先输入ARP命令,还有更简单的办法,可以让电脑每次启动时,自动将路由器的IP与MAC绑定到电脑的ARP表中:
第一步:新建一个批处理文件如static_arp.bat,注意后缀名为bat。编辑它,在里面加入ARP命令,并保存。
要得到路由器的LAN口MAC地址,可以查看路由器的界面中的“LAN运行状态”。
第二步:将建立好的批处理文件static_arp.bat拷贝到系统的启动目录中。电脑每次启动时将自动运行该文件,自动绑定IP与MAC。
第三步:将static_arp.bat文件拷贝到网吧内所有电脑的系统启动目录中。
至此,网吧中的所有电脑都将路由器的IP与MAC绑定到ARP表中,无需再担心因ARP攻击而无法上网。
特别提示:当使用了ARP防范功能(IP和MAC绑定功能)后,电脑应使用固定IP,而不要使用动态IP(通过DHCP自动获取IP),因为若使用动态IP,电脑每次启动时所获得的IP可能不一样,从而可能造成与路由器中保存的IP与MAC绑定条目不一致,这样电脑将无法上网。
不过上面的是治标不治本的方法。要治本的话,就要去机房看看了,看交换机上哪能个电脑的流量最大,灯狂闪,把他拨了,再上网试,这时候如果发现所有电脑都上不了网了,或是连路由器也PING不通了,那么恭喜你,你找到这个主机了,把路由器重启一下,再去专门整那个中毒的机器吧,没把病毒清理干净前,不要让这个机器接入局域网。