众所周知,ARP病毒的传播原理是:让中毒计算机的网卡不断发送虚假的ARP数据包,告诉网内其他计算机网关的MAC地址是中毒计算机的MAC地址,使其他计算机将本来发送到网关的数据发送到中毒计算机上。目前,应对ARP攻击可采用的技术如下。
1. IP与MAC地址绑定
首先在客户端计算机上清除ARP缓存,命令为“arp -d ”。然后,静态绑定网关的IP和MAC,命令为“arp -s 网关MAC”。最后,将以上两行命令编成批处理文件,并加到启动组中,使计算机启动时自动运行。
缺点是在移动或者经常变化的网络环境中,这种手工维护MAC表的方式不适用。
2. 使用ARP服务器
设立一台ARP服务器,客户端计算机通过该服务器查看ARP转换表,找到对应的ARP转换条目来响应其他计算机的ARP广播。
但ARP服务器同样存在被病毒攻击的风险。
3. 使用多层交换机或路由器
接入层是采用基于IP地址变换进行路由的第三层交换机。由于第三层交换技术用的是IP路由交换协议,以往链路层的MAC地址和ARP协议失效,因而ARP欺骗攻击在这种交换环境下不起作用。
缺点是第三(四)层交换机价格普遍比较昂贵。
4. 使用IPV6协议
IPV6定义了网上邻居发现协议NDP,把ARP纳入NDP并运行于控制报文协议ICMP上,使ARP更具有一般性,包括更多的内容且不用为每种链路层协议定义一种ARP。
但目前尚缺乏大规模使用IPV6协议的软件。
5. 使用专业的ARP防火墙软件
在全网部署安装ARP防火墙服务器端及客户端软件。
缺点是购置软件投入较大,且安装维护繁琐。