网络上有很多关于ARP的解决方法,但由于网络环境的限制,最终可以实施的相对较少,所以这里再进行一次搜集,不管你的网络硬件配备如何,希望可以从中找到一种适合的方法。
文中没有提到的方法,欢迎大家提出来交流!也欢迎大家写出自己的排查经验!
一、如何判断正在遭受ARP攻击;
1)执行ARP –D,ping网关地址,如果“Reply from……”和“Request time out”交叉出现,则有可能正在遭受攻击;
2)连续执行 ARP –A,发现对应的网关MAC地址不断的变化或与正确的网关MAC不相符,则确定正在遭受攻击;
3)通过网络分析软件进行快速判断,如下图:
在科来网络分析系统中的ARP诊断截图:
在Omnipeek中的ARP诊断截图:
从上面可以看到,科来网络分析系统清楚的告诉了我们网络是ARP扫描还是欺骗,而Omni则只告诉了ARP请求风暴,对欺骗则诊断为广播风暴。对ARP的诊断,科来网络分析系统稍胜一筹。
注:上面是同一数据包的分析结果。
二、如何定位攻击源
1.在被攻击的主机上连续执行“arp -d”、“arp –a”,出现最多的那条记录就是ARP攻击者;
2.通过网络分析软件,如下图:
3.通过命令或协议分析软件找到MAC地址,但如果这些地址是伪造的怎么办呢?可以通过以下方法来查找:
A:假设这个MAC地址是“aaaa.bbbb.cccc”,在网管型交换机上,在网管型交换机(以思科设备为例)上执行:cisco-3550#show arp | include aaaa.bbbb.cccc则可以查到是交换机的哪一个端口在发包含这个MAC的数据包,如查该端口连接的是一个交换机,则在下面的交换机上重复执行刚才命令,直接找到计算机为止;
B:如果网络中不是可网管型交换机的话,则稍稍要麻烦一点,用拔线大法:在被攻击者的计算机上分别执行ping 网关IP –t和arp –d命令,如果有多台非网管型交换机,则依次切断它们的电源,当发现出现持续的“Reply from……”时,则可以断定ARP攻击源来自这台网络设备;然后插上该设备的电源,一根根地拔线直到出现现持续的“Reply from……”,则何以断定该网线所接的设备就是ARP攻击源。如果感觉比较慢,则可以一次拔下多台设备的网线然后进行测试,也可以很快找到攻击源;
C:可以借助TAP设备,关于用TAP的查找方法,以前坛子里有介绍,感兴趣的可以搜下。
三、如何解决ARP故障
1.安装ARP防火墙;
2.在目标设备和计算机上分别进行IP地址MAC地址的静态绑定即双向绑定;
目前介绍最多的方法,对小规模网络比较适用;
3.采用动态的ARP检查技术,结合DHCP的功能,实现IP地址和MAC地址的自动绑定。
解决ARP攻击最好的方法,不需要管理人员的协助,非法的ARP包无法进入网络,不存在危害,不影响网络性能,不过对设备和技术的要求都相对较高。
|