请选择 进入手机版 | 继续访问电脑版

芯机智

 找回密码
 立即注册

扫一扫,访问微社区

搜索
热搜: 活动 交友 discuz
查看: 2986|回复: 1

ARP挂马

[复制链接]

141

主题

147

帖子

625

积分

高级会员

Rank: 4

积分
625
发表于 2011-1-14 02:54:26 | 显示全部楼层 |阅读模式
本文介绍的将是一种“奇特”的挂马方式:ARP挂马。
与前文介绍的服务器端网站挂马方式不同的是,ARP挂马并不是针对网站服务器端,也就是说,ARP挂马并没有入侵网站服务器,对网站的网页文件做出实质上的修改。这时也许你就会想,肯定是客户端那里中病毒了。不一定!ARP挂马的奇怪之处就在于:网站本身没有被修改,正在浏览该网站的客户机也没有感染病毒,但是用户正在浏览的网页却是被挂马的。

这就是ARP病毒在作祟。
让我们先来简单普及一下ARP的概念。
ISO将整个计算机网络通信功能划分为7个层次:
第七层  应用层
第六层  表示层
第五层  会话层
第四层  传输层
第三层  网络层
第二层  数据链路层
第一层  物理层

地址解析协议(Address Resolution Protocol,ARP)具体说来就是将网络层(IP层)地址解析为数据链路层(MAC层)的MAC地址。为什么要这样转换呢?因为局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。

比如vlan中有两台机器A(192.168.1.2)、B(192.168.1.3)。
计算机A是如何得知B的MAC地址的呢?就是通过ARP协议。
在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中填有B的IP(192.168.1.3),vlan的所有计算机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,包中就填充上了B的MAC地址,并回复给A。
A得到ARP应答后,将B的MAC地址放入本机缓存。但是MAC缓存是有生存周期的,生存周期到了之后后,就又会发广播包,即重复上面的过程。——因此可以预想,ARP病毒肯定是一直循环发送广播包,用来更新客户机的ARP缓存表的。

这属于Ask-Answer模式,当然,ARP协议并不只在发送了ARP请求才接收ARP应答。只要计算机接收到ARP应答数据包,就会对本地的ARP缓存进行更新,将应答中的IP和 MAC地址存储在ARP缓存中。注意,ARP病毒正是利用了这种原理,当局域网中的某台机器B向A发送一个自己伪造的ARP应答,而如果这个应答是B冒充C伪造来的,即IP地址为C的 IP,而MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,而它的MAC地址已经不是原来那个了。如果这个MAC是不存在的,就会造成网络不通,导致A不能Ping通C!这就是一个简单的ARP欺骗。

所以,大家可以设想,如果B发送的欺骗包 是用来修改客户机的ARP缓存吧里的“网关的MAC地址”的,那会带来什么后果。
我们假设B中了ARP病毒,因此向局域网内所有机器发送广播包,告诉这些机器,网关的MAC地址是B的MAC,那么vlan里所有机器在访问Internet时:
(1)http请求的数据包首先都会到达B那里,B的病毒逻辑模块会判断是哪个客户端发过来的包,转然后再转给原先的网关,与Internet通信;
(2)原先的网关给B返回HTTP响应的时候,B的病毒逻辑模块在HTTP响应包中,插入一段挂马的代码,比如 <iframe>...之类,再将修改过的包返回的正常的客户。
这样就达到了一个挂马的目的。在这个过程中,网站本身是没有被修改的,只不过客户机发给网站的HTTP请求被B截获,然后B对网站返回的响应做了修改。所以客户收到的http响应就是恶意的了。

所以大家现在就清楚了,为什么网站没被挂马,客户机也没中毒,为什么访问的网页却是被挂了马的呢?对了,就是因为客户机所在的vlan里有机器中了ARP挂马病毒。

说到ARP挂马病毒,当然要提到前段时间鼎鼎大名的“磁碟机”病毒了。

那么如何找到ARP病毒所在的机器,以及如何对付ARP挂马病毒呢。
1·关于查找,由于病毒所在机器会一直发送更新网关MAC地址的广播包,用来更新客户机的ARP缓存,所以只要在 “ARP缓存表已被修改”的机器上,用arp命令就可以看出哪台机器冒充了网关——比如,有两台机器的MAC地址一样,但是你知道哪个IP是网关,那么另一个IP对应的机器就是中毒机器了。

2·关于预防,最直接的方法就是“实现本机与网关的双向绑定”,请注意要双向绑定。用的命令是arp -s。比如在客户机:arp -s [网关IP] [网关MAC],在网关就arp -s [客户机IP] [客户机MAC]。
当然也可以使用ARP防火墙,但是目前市面上很多的ARP防火墙功能都只能起到暂时保护作用。那该怎么办呢——用好的杀毒软件,并及时更新病毒码。既然不能把挂马包在http响应中去除,那如果挂马包链接的是病毒,杀毒软件就可以在该病毒尝试入侵计算机的时候,将该病毒挡在门外。趋势科技还有一个存储了大量网址信息的数据库,如果挂马的链接在该数据库标志为恶意,那么在部署了趋势科技安全方案的客户机里,该链接就会直接失效,这就是一个更主动防御的方法了。

3·当然,就算杀毒软件将挂马病毒挡在门外了,但是vlan里面的流量还是比以前多了很多,所以很多客户机会感到网速变慢。所以,争取不让病毒进入vlan,做到vlan的完善管理也是需要下大工夫的地方。
回复

使用道具 举报

0

主题

69

帖子

179

积分

注册会员

Rank: 2

积分
179
发表于 2012-2-27 21:16:43 | 显示全部楼层
回复一下吧













回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|芯机智 ( 京ICP备18048803号 )

GMT+8, 2021-1-17 02:22 , Processed in 0.509633 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表