【IT168 专稿】浏览我们IT168网站的读者中大部分都是企业的网管以及网络安全爱好者,相信最近一段时间最让我们头疼的莫过于ARP欺骗类蠕虫病毒了,这种病毒处理起来很麻烦,一台机器感染会造成网段中所有机器的上网中断或混乱。笔者也曾经为ARP欺骗类蠕虫病毒所困饶,下面笔者根据自己的经验和经历和大家一起探讨下ARP欺骗类病毒的防治思路。
一,ARP欺骗病毒概述:
由于篇幅关系我们不可能在这里大幅讲解ARP欺骗病毒的工作原理和扩散机理,笔者只是对ARP欺骗病毒进行一个大概介绍。所谓ARP欺骗病毒实际上就是一台感染了病毒的计算机不断的冒充网关的IP地址,不停的告诉网络中所有计算机网关地址对应的MAC信息是感染病毒机器的MAC,这样由于他的发包量大大大于网关实际发送的ARP信息数据,所以正确的ARP数据包被虚假伪装过的数据包所掩盖,从而导致到其他计算机要上网时会把对应的数据发送到网关(实际上这个网关对应的MAC已经是中毒机器的MAC地址了),接下来数据的发送与接收完全由中毒机器和正常机器进行了,正确的网关地址被彻底跳过,从而造成网络访问出现问题,虚假欺骗信息赫然网页之上,其他计算机上网缓慢或者根本无法上网,甚至访问到的地址变成了一个虚假页面等。
二,ARP欺骗病毒防治关键:
ARP欺骗病毒的诞生和传播与爆发关键在于他向网络中发送了大量的虚假数据包,虚假数据包的内容是告诉其他计算机网关地址的MAC是感染病毒的MAC,比如这台机器的MAC地址是1111-1111-1111,自己的IP地址是192.168.1.5,网络中真正网关地址是192.168.1.254,那么虚假数据包就是告诉其他计算机192.168.1.254对应的MAC地址是1111-1111-1111。由于TCP/IP协议传输是从低层数据链路层开始到高层网络层的,所以辨认计算机先要通过MAC地址,由于网络中其他计算机已经接收到了192.168.1.254地址对应的MAC是1111-1111-1111,那么他们将首先通过MAC和ARP缓存信息来确定定位目标网关计算机。
因此通过上面的分析我们可以明确一点,那就是防范ARP欺骗病毒的关键就是处理这种非法数据包——IP地址是网关而MAC地址是感染病毒的计算机。
三,ARP病毒的防治思路:
本文主要讨论的是一种ARP欺骗蠕虫病毒的防治思路,是一种防患于未燃的措施,如果ARP欺骗病毒已经爆发,那么各位网络管理员需要做的就是通过sniffer来检测病毒定位目标计算机了,具体的方法我在之前的“零距离接触Downloader病毒”文章中已经介绍过,这里就不详细说明了。
下面说下防治思路——我们将防治的关键点放在处理ARP欺骗数据包上,由于我们知道了欺骗数据包内容是“IP地址是网关而MAC地址是感染病毒的计算机”,只要针对此数据包进行过滤即可。在网络没有病毒时我们是可以知道真正的网关对应的正确MAC地址的,只需要通过arp -a或者直接在交换机上查询即可。这里假设真正网关对应MAC地址是2222-2222-2222。那么我们需要在交换机上设置一种访问控制列表过滤策略,将所有从交换机各个端口out方向上发送的源地址是192.168.1.254但是源MAC地址不是2222-2222-2222,或者目的地址是192.168.1.254而目的MAC地址不是2222-2222-2222的数据包丢弃(放入黑洞loopback环路),同时自动关闭相应的交换机端口。
四,防治ARP欺骗病毒模拟流程:
由于ARP欺骗病毒的传播是需要通过交换机发送虚假广播信息的,而虚假数据信息内容中源或目的地址IP信息一定包括192.168.1.254,而对应的MAC地址一定不是正确的2222-2222-2222,因此这类虚假数据会被之前我们在交换机上设置的访问控制列表或过滤策略所屏蔽,再结合自动关闭对应端口彻底避免ARP欺骗蠕虫病毒的传播。之后感染了病毒的计算机将无法上网,他一定会联系网络管理员,从而帮助我们快速定位问题计算机,在第一时间解决问题。
小提示:
不过如果企业网络中采取的拓扑是在一个交换机端口下还连接有诸如HUB的设备的话,那么如果连接HUB设备的下属计算机中有感染ARP欺骗病毒的话,交换机端口依然会自动关闭,整个HUB设备下连计算机都将无法上网,所以建议大家还是尽量采用交换机来连接企业计算机。
五,总结:
这种防范措施是需要结合ACL访问控制列表以及路由策略等多个路由交换设备功能的,首先要保证路由交换设备支持这些功能,另外还要进行合理的设置,不能够过滤掉正确的数据包。当然本文内容只是笔者在多次对抗ARP欺骗病毒后产生的一个防范思路,希望可以和更多的朋友一起探讨,了解更多的建议,大家共同进步将ARP欺骗病毒彻底查杀。