ARP局域网木马的诊断与防治

Orz好久没更了….立志要在水了两篇文之后第三篇一定要是技术向的文章,于是….一个月没更新了……感觉好对不起我买的空间……好吧正文….

 

 

前几天机房时不时掉线,还间歇式断网。然后大概在四天前,彻底挂了连不上网。。。对安全类一直没研究,问深藏不露的三三,回了ARP三个字。于是用了两节英语课百度谷歌,算是对ARP有了些了解。

分析

造成这种情况,一般有两种可能,1是局域网的某台机子中了病毒;2是局域网内有人用了p2p终结者,网络执法官一类的软件对其他用户进行限速,当然原理还是用了ARP木马的原理。在我们机房有10M/s下载速度的情况下,相信应该不是某个人闲的蛋疼弄的,所以估计就是班上某个250中了病毒。

原理

ARP欺骗是怎么产生的呢?这要从电脑怎么联网说起,比如局域网的两台电脑,要想交流,首先根据IP进行区分,然后要交流,就是通过网卡交流,比如:

A电脑 IP:192.168.1.1  MAC:00-11-22-33-44-55-66

B电脑IP:192.168.1.2 MAC:11-11-22-33-44-55-66

(对了,扩展阅读在 Windows 下修改 MAC 地址时,为什么第 2 个十六进制字符只能是 2、6、A、E 之一?,在知乎上的一个提问,因为试图修改MAC地址蹭网时发现了个比较奇怪的问题)

A的ip是192.168.1.1,要是想跟B联系,怎么联系?通过网卡。然后A怎么知道B那货的MAC地址是多少,于是发一个它跟屋里的每个电脑都喊一句话,IP是192.168.1.2的那货MAC地址是多少?(dos里貌似有条命令nbtstat -a 192.168.1.2 可以类似这样获取相应ip的MAC地址的,但是不知道能不能防止ARP诈骗的,如有知道望告知。而且netBIOS看起来又好玄乎Orz…)然后每台机子都很守本分,不关它的事它就不回答,然后B看到了就回给A一句,啊,我ip就是192.168.1.2,我的MAC地址是11-11-22-33-44-55-66.然后A电脑总不可能每次要干啥都问一遍所有人吧,于是它就会在自己这里存一份IP跟MAC地址对应的表格,先在表里看一遍,没有再问,要查看这个就在dos里arp -a就可以看到了,还有些其他命令可以百度arp看百度百科。

嗯,这一切都是正常情况下的通信,要是有个C电脑中了ARP病毒,不守规矩了,A明明问的是192.168.1.2,只有B才回回答的,C这家伙却喊着我我我,192.168.1.2的MAC地址是XX-XX-XX-XX-XX-XX(C电脑的MAC),然后我们纯洁的A就被骗了,然后C再骗下B,于是C就成为A与B交流的中介了,局域网内所有的电脑都被C骗了之后,所有通讯都会经过C,C可以自由的控制这些电脑的网速等等以及窃取信息了。比如给你断下网,然后你打游戏时就掉线了,再登,输入密码,会经过C的中转,然后C就得到你的密码了,不过现在无论是游戏密码或者浏览网页,很多都是加密了的,于是现在除非你破译啥的否则就是只有限网这个用途了。当然我这一直有一个疑问,A去询问B的MAC地址的时候,如何能保证C会在B之前回答,如果B比C先回答那ARP欺骗还会成立么,或者如果B跟C都返回了,A是根据先后顺序取舍还是啥,这里一直没太弄明白。

治疗

局域网里这么多台机子,怎么判断是哪台机子出了问题呢?1,如果路由器在你这,你查看日志可以很容易找到中毒机的MAC地址,然后用nbtscan去找到中毒机的ip,然后ko了(我弄不到我们机房的路由信息,所以没去试验此法);2,用某个命令(nbtstat -a 路由器IP ,这个应该可以,但是小白鼠已经挂了我实验不了)获取假的网关的MAC地址(其实就是中毒机的MAC地址了),然后用nbtscan找到MAC地址对应的IP,ko ;3,交给杀毒软件。

nbtscan自行百度下载,貌似功能是可以看到局域网内真实的IP与MAC地址对应表,具体原理不清楚。命令就是nbtscan -r 192.168.9.0/24 这是扫描全部的,我们是9机房所以分配的是192.168.9.XX,根据自己IP判断。

具体到我们机房,这个鬼问题纠结了我两天,理论上中毒机关机了就可以正常上网啊,但是就开了我一台还是死活连不上,然后弯腰了将近40次把电脑全打开了还是连不上,一直诊断结果是默认网关不可用,所以我开始怀疑这是不是ARP病毒的一种变种,强悍到了哪怕病毒机关机也是必须指向病毒机中转,或者压根不关ARP的事是其他原因…..然后问了几次才知道特么哪个老师把我们机房的路由器关了。然后暂时有网了,下了个彩影ARP防火墙,我去居然不兼容win8,好吧切换win7居然还不兼容。。。卧槽这病毒是有多古老,彩影ARP防火墙最新的更新都是10年。无奈只能把目光投向大数字了,扒来同学一台电脑,用她的360开启了ARP防护,过一会检测到了攻击,提示ip是192.168.9.5,然后对应了nbtscan没错,结果妈蛋居然是她这台机子,我总怀疑有点不对劲是不是拦截错了,不过只能用数字的全盘扫描扫了下,发现了个未知的启动项,禁止了就这样不了了之了。然后叫其他人有数字的开下数字的局域网防火墙,有金山的开金山的,然后找了几个熟的确认了他们的防火墙都开了之后就不管了,等再发生攻击再说。不过一上午了也没出问题估计就这样了。彩影的貌似有个检测功能可惜不能用,不知道虚拟机安装xp可不可以(貌似不行)。反正一切等再出问题再看吧,感觉诡异的事还有好多…..

预防

1、不要把你的网络安全信任关系建立在IP基础上或MAC基础上,(rarp同样存在欺骗的问题),理想的关系应该建立在IP+MAC基础上。
2、设置静态的MAC–>IP对应表,不要让主机刷新你设定好的转换表。
3、除非很有必要,否则停止使用ARP,将ARP做为永久条目保存在对应表中。
4、使用ARP服务器。通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确保这台ARP服务器不被黑。
5、使用”proxy”代理IP的传输。
6、使用硬件屏蔽主机。设置好你的路由,确保IP地址能到达合法的路径。(静态配置路由ARP条目),注意,使用交换集线器和网桥无法阻止ARP欺骗。
7、管理员定期用响应的IP包中获得一个rarp请求,然后检查ARP响应的真实性。
8、管理员定期轮询,检查主机上的ARP缓存。
9、使用防火墙连续监控网络。注意有使用SNMP的情况下,ARP的欺骗有可能导致陷阱包丢失。

(摘自度娘百科)

貌似查到了几种比较技术向的方法,1是写个bat开机启动;2是写个啥导入到注册表。反正我感觉这些挺麻烦的,去开个防火墙吧就得了,貌似这些安全软件的局域网防火墙都是默认关闭的。对于裸奔的用户呢….得自作自受了,安全性与便利性总是相对的。感想,怎么说呢,我自己这个裸奔用户(MSE被我无视了)还是能确保机子不中毒的,貌似没啥途径能中毒了。但是,万万没想到,特么别人中毒居然得折腾死我…..

对了貌似在ARP病毒与ARP防火墙的拉锯战中诞生了一个奇葩:幻境网盾,有这个需要的可以看看。(ps这货取名取的像是防火墙这一边的其实是病毒这一边的)

 

发布者:xloger

在无限延伸的梦想后面 穿越冷酷无情的世界

加入对话

9条评论