原理到应用谈解决ARP攻击的方法
现在ARP不只是协议的简写,还成了掉线的代名词。很多网吧和企业网络不稳,无故掉线,经济蒙受了很大的损失。根据情况可以看出这是一种存在于网络中的一种普遍问题。出现此类问题的主要原因就是遭受了ARP攻击。由于其变种版本之多,传播速度之快,很多技术人员和企业对其束手无策。下面就来给大家从原理到应用谈一谈这方面的话题。希望能够帮大家解决此类问题,净化网络环境。
在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址,实现局域网机器的通信。ARP协议对网络安全具有重要的意义。这是建立在相互信任的基础上。如果通过伪造IP地址和MAC地址实现ARP欺骗,将在网络中产生大量的ARP通信量使网络阻塞、掉线、重定向、嗅探攻击。
我们知道每个主机都用一个ARP高速缓存,存放最近IP地址到MAC硬件地址之间的映射记录。Windows高速缓存中的每一条记录的生存时间一般为60秒,起始时间从被创建时开始算起。默认情况下,ARP从缓存中读取IP-MAC条目,缓存中的IP-MAC条目是根据ARP响应包动态变化的。因此,只要网络上有ARP响应包发送到本机,即会更新ARP高速缓存中的IP-MAC条目。如:X向Y发送一个自己伪造的ARP应答,而这个应答中的数据发送方IP地址是192.168.1.3(Z的IP地址),MAC地址是DD-DD-DD-DD-DD-DD(Z的真实MAC地址却是CC-CC-CC-CC-CC-CC,这里被伪造了)。当Y接收到X伪造的ARP应答,就会更新本地的ARP缓存(Y可不知道被伪造了)。那么如果伪造成网关呢?
Switch上同样维护着一个动态的MAC缓存,它一般是这样,首先,交换机内部有一个对应的列表,交换机的端口对应MAC地址表Port n <-> Mac记录着每一个端口下面存在那些MAC地址,这个表开始是空的,交换机从来往数据帧中学习。因为MAC-PORT缓存表是动态更新的,那么让整个 Switch的端口表都改变,对Switch进行MAC地址欺骗的Flood,不断发送大量假MAC地址的数据包,Switch就更新MAC-PORT缓存,如果能通过这样的办法把以前正常的MAC和Port对应的关系破坏了,那么Switch就会进行泛洪发送给每一个端口,让Switch基本变成一个 HUB,向所有的端口发送数据包,要进行嗅探攻击的目的一样能够达到。也将造成Switch MAC-PORT缓存的崩溃,如下面交换机中日志所示:
Internet 192.168.1.4 0000b.cd85.a193 ARPAVlan256
Internet 192.168.1.5 0000b.cd85.a193 ARPAVlan256
Internet 192.168.1.6 0000b.cd85.a193 ARPAVlan256
Internet 192.168.1.7 0000b.cd85.a193 ARPAVlan256
Internet 192.168.1.8 0000b.cd85.a193 ARPAVlan256
Internet 192.168.1.9 0000b.cd85.a193 ARPAVlan256
ARP攻击时的主要现象
网上银行、保密数据的频繁丢失。当局域网内某台主机运行ARP欺骗的木马程序时,会欺骗局域网内所有主机和路由器,让所有上网的流量必须经过病毒主机。其他用户原来直接通过路由器上网现在转由通过病毒主机上网,切换的时候用户会断一次线。切换到病毒主机上网后,如果用户已经登陆服务器,那么病毒主机就会经常伪造断线的假像,那么用户就得重新登录服务器,这样病毒主机就可以窃取所有机器的资料了。
网速时快时慢,极其不稳定,但单机进行光纤数据测试时一切正常。局域网内频繁性区域或整体掉线,重启计算机或网络设备后恢复正常
由于ARP欺骗的木马程序发作的时候会发出大量的数据包导致局域网通讯拥塞以及其自身处理能力的限制,用户会感觉上网速度越来越慢。当ARP欺骗的木马程序停止运行时,用户会恢复从路由器上网,切换过程中用户会再次断线。