扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
近期在全国范围内大规模爆发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,否则就会发生冲突,结果必然是其中的一台机器无法上网),同时抓取ip地址对应mac地址.网卡的工作有两种模式:一种是正常模式,即只能接收到指定目的MAC的广播包或都是目的MAC与网卡MAC相同的包。第二种是不检查目的MAC而接收所有的包,sniffer(监听程序)就是用这种原理来窃取网络上的数据的。那么也就是说我们只要检测出局域网中哪个网卡工作在混杂模式,它就很可能是在进行攻击的那台计算机了。
固定的ip地址
所谓固定的ip地址是指每台计算机ip地址是静态的(网络管理员根据自己的网络分配).
单纯使用 tracert命令就可以找到问题的根源.(这里不在详述)
Arp病毒清除
如果你得计算机不想格式化硬盘,请按以下顺序删除病毒组件
1.1) 删除 ”病毒组件释放者”
%windows%\SYSTEM32\LOADHW.EXE
2) 删除 ”发ARP欺骗包的驱动程序” (兼 “病毒守护程序”)
%windows%\System32\drivers\npf.sys
a. 在设备管理器中, 单击”查看”-->”显示隐藏的设备”
b. 在设备树结构中,打开”非即插即用….”
c. 找到” NetGroup Packet Filter Driver” ,若没找到,请先刷新设备列表
d. 右键” NetGroup Packet Filter Driver” 菜单,并选择”卸载”.
e. 重启windows系统,
f. 删除%windows%\System32\drivers\npf.sys
3) 删除 ”命令驱动程序发ARP欺骗包的控制者”
%windows%\System32\msitinit.dll
2. 删除以下”病毒的假驱动程序”的注册表服务项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Npf
Arp预防
不要把你的网络安全信任关系建立在ip基础上或mac基础上,(rarp同样存在欺骗的问题),理想的关系应该建立在ip+mac基础上。设置静态的mac-->ip对应表,不要让主机刷新你设定好的转换表,管理员定期用响应的ip包中获得一个rarp请求,然后检查ARP响应的真实性。检查主机上的ARP缓存, 使用防火墙连续监控网络。(注意有使用SNMP的情况下,ARP的欺骗有可能导致陷阱包丢 )
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者