脸上长白癣:ARP欺骗的防护

来源:百度文库 编辑:偶看新闻 时间:2024/05/10 23:30:24

说解决办法之前还是先说说ARP欺骗的原理
arp攻击的起因是一些值钱的网络游戏盛行后,一些病毒高手为了盗号就出现了ARP病毒,关键
的是ARP攻击有时会让我们掉线,但有时也只是短暂的掉线(原因是路由器也会时时广播正确的
ARP信息),有些同学以为自己能上网就没必要管什么ARP攻击,其实ARP欺骗最恐怖的不是掉线,
当你在上网的时候网线的中间有一个人正在偷窥你的网络数据,比如你的聊天记录,你的密码,
你的隐私。哎。不说了。有时候ARP欺骗也会造成长时间掉线,原因是ARP主机不停的广播错的ARP
信息,并且量非常大的时候,比如一秒种几百次,那么路由器的正确ARP包也就被淹没了。


来看看ARP是怎么欺骗的
假如现在有3台PC其中有一台是ARP主机
A 192.168.1.2 AA-AA-AA-AA-AA-AA
B 192.168.1.3 BB-BB-BB-BB-BB-BB
C 192.168.1.4 CC-CC-CC-CC-CC-CC

看看他们的数据发送方式,如果A要给B发送数据,那么A会先在ARP缓存表中查找B的,找到的话就
直接发出去,没找到的话就发出一个广播说“我在找192.168.1.3,收到请回复哟”,正常情况局
域网中的其他电脑是不会回复的,只有B回说“我就是192.168.1.3,我的物理地址是BB-BB-BB-BB
-BB-BB,请问你有什么事呀?”。接着A就得到了B的物理地,就会给B发送数据了,并在ARP缓存表
中记录下来。但是如果C是ARP主机的话,他也会说“我就是你要找的人,我的地址是CC-CC-CC-CC-
CC-CC”。这样A就被C给欺骗了。这种情况A和B的通信就掉线了,A发给B的数据被C收了,但C为了继
续欺骗是不会没收数据的,他会把数据包更改并转发给B,让B也被欺骗以为C就是A,B发给A的数据
也通过C转发,这样A可以和B通信,B也可以和A通信,只不过中间有C隔着。

解决办法:
1.通过清除并重建本机arp表可以获得短暂的网络联通,但这是治标不治本的,原因是ARP主机还是会
继续攻击欺骗并重新更改数据流向。有人会想到既然可以通过清除并重建本机arp表让网络短暂联通
那为何不一直清除并重建本机arp表呢,我也试过的,做个死循环一直清除并重建本机arp表,但是这
样会影响网络质量。所以我改为判断的了,当网络断开的时候,就做一次清除并重建本机arp表的动
作。(效果还是可以的)

2.欺骗是通过ARP的动态实时的规则欺骗内网机器,所以我们把ARP全部设置为静态可以根本解决对内网
PC的欺骗。方法是本机和网关实现IP与物理地址的绑定。

3.有些人说减小ARP缓存老化时间可以防止ARP欺骗,我认为是不行的所以就没加这功能。因为就算缩短
了缓存老化时间,只要ARP主机还存在他就会继续广播,所以我认为不能阻止电脑生成一个错误的缓存
表。也就不能防止ARP欺骗。 要想解决ARP受攻击的问题,你先分析ARP病毒 查杀防范ARP全攻略

电脑中毒后会向同网段内所有计算机发ARP欺骗包,由于ARP欺骗的木马程序发作的时候会发出大量的数据包导致局域网通讯拥塞,用户会感觉上网速度越来越慢,掉线;甚至无法上网,同时造成整个局域网的不稳定,这种现象就是我们常见的ARP病毒。

ARP病毒入侵

首先让看看网络病毒在网络中如何实现 ARP欺骗.看看这样一个例子:一个入侵者想非法进入某台主机,他知道这台主机的防火墙只对192.168.0.111(假设)这个ip开放23口 (telnet),而他必须要使用telnet来进入这台主机,所以他要这么做以下几步:

1、他先研究192.168.0.111这台主机,发现这台windowsxp的机器使用一个oob就可以让他死掉。

2、于是,他发送一个洪水包给192.168.0.111的139端口,于是,该机器接到数据包而死。

3、这时,主机发到192.168.0.111的ip包将无法得到响应,系统开始更新自己的arp对应表。将192.168.0.111的项目除去。

4、这段时间里,入侵者把自己的ip改成192.168.0.111。

5、他再发一个ping(icmp 0)给主机,要求主机更新主机的arp转换表。

6、主机找到该ip,然后在arp表中加入新的ip-->mac对应关系。

7、防火墙失效了,入侵的ip变成合法的mac地址,可以telnet了。

ARP病毒原理:arp是一种将ip转化成以ip对应的网卡的物理地址的一种协议,或者说ARP协议是一种将ip地址转化成MAC地址的一种协议。它靠维持在内存中保存的一张表来使ip得以在网络上被目标机器应答。

为什么要将ip转化成mac呢?简单的说,这是因为在tcp网络环境下,一个ip包走到哪里,要怎么走是靠路由表定义。但是,当ip包到达该网络后,哪台机器响应这个ip包却是靠该ip包中所包含的mac地址来识别。也就是说,只有机器的mac地址和该ip包中的mac地址相同的机器才会应答这个ip 包。因为在网络中,每一台主机都会有发送ip包的时候。所以,在每台主机的内存中,都有一个 arp--> mac 的转换表。通常是动态的转换表(注意在路由中,该arp表可以被设置成静态)。也就是说,该对应表会被主机在需要的时候刷新。这是由于以太网在子网层上的传输是靠48位的mac地址而决定的。

目前局域网主要流行有两种方式:DHCP(动态主机配置)固定的ip地址

DHCP(动态主机配置)

使网络管理员能够集中管理和自动分配 IP 网络地址的通信协议。在 IP 网络中,每个连接 Internet 的设备都需要分配唯一的 IP 地址。DHCP 使网络管理员能从中心结点监控和分配 IP 地址。当某台计算机移到网络中的其它位置时,能自动收到新的 IP 地址。DHCP 使用了租约的概念,或称为计算机 IP 地址的有效期。租用时间是不定的,主要取决于用户在某地联接 Internet 需要多久, DHCP 能够在一个计算机比可用 IP 地址多的环境中动态地重新配置网络。

如果这种网络感染了这种病毒,可想而知,因为所有的计算机没有固定的ip地址,计算机的重启,重新获取了新的ip地址。只有通过Tracert和固定ip冲突来查找病毒计算机。

我们假设在这样局域网中增加一台机器,操作系统均为WINDOWSXP,该计算机的IP地址和网卡硬件地址分别为192.168.10.100和00- 00-0D-50-EE-B1。该局域网内网网关为192.168.10.1;外网网关为222.*.*.1.当网络出现断流时, 通过Tracert www.it168.com 你可以观察出路由变化情况,正常的第一跳为 192.168.10.1, 不正常为该病毒计算机.虽然判断出哪个固定ip地址的计算机在出问题,由于固定ip地址随意行,不好判断是那台计算机; 利用IP冲突方式来判断(一个局域网中不可以同时有两个相同的ip,否则就会发生冲突,结果必然是其