遭遇服务器自动加入病毒代码的ARP攻击

早上警报不断,电话不断,所有反馈的信息都是网站的页面被篡改,包含病毒“Exploit-ANIfile.c”。

又是“Exploit-ANIfile.c”,有经济利益就是不同啊。查看了一下,下属所有网站,不论ASP、ASPX、HTM全都被放进了JS代码。我的天,就算把漏洞堵住了,恢复几万个页面也会累肿手啊。
但是停机一查,页面并未被更改。可客户浏览器上看确实被加了代码呀。马上查IIS的加载项目、页眉页脚设置,全都正常。重启服务器,病毒代码又消失了。鬼吃饼的事情。看来系统没有被害,否则服务器不会这么干净。那就是IIS被攻击了?看样子也不象。百度搜索看了好几页才看到一个可能性:ARP攻击。

简单的说,正常的服务器到浏览者的流程是:服务器-网关-浏览者。服务器被ARP欺骗后就成了:服务器-中转站-网关-浏览者。中转站就可以随意篡改服务器发出的信息了,而浏览者以为是服务器发出的数据。这个东西妙就妙在使用了服务器无法关闭的一种协议,它不是关掉端口、停止服务就可以解决的问题。就好像饭里可能被投毒,但是你不能不吃饭一样。
马上找了个反ARP攻击的软件装上去,天下太平了。通过软件的功能菜单,我终于对ARP有了更感性的认识。

很多年前在南昌电信托管的一台机器也发生过这种事情,当时也搞不明白状况,莫名地就好了。现在想起来很可能也是ARP攻击。还看过有些黑客软件声称可以伪造MAC地址,现在看来也是ARP搞的鬼。以前看书的时候觉得吧ARP协议说得太玄乎了,似乎没什么用,现在才了解他的基础地位。真是读书不如实践。不过这种被迫实践还是不要来的好。

早上“中企动力”的苍蝇又来电话了,报告我一个喜讯:“通用网址可以连续注册十年了。”撞在枪口上,免不了CM一下公司以前注册的通用网址浪费钱,苍蝇MM也免不了有些怒,想要争辩我的偏见是如何伤到了一个销售通用网址从业者的心。我没有给这个女人机会。

以下是趋势科技对ARP攻击的介绍,图片略过:

1 前言:病毒原理和行为说明
此类病毒利用的是ARP Spoofing攻击原理。在局域网中,是通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞或者实现“man in the middle” 进行ARP重定向和嗅探攻击。
用伪造源MAC地址发送ARP响应包,对ARP高速缓存机制的攻击。
每个主机都用一个ARP高速缓存存放最近IP地址到MAC硬件地址之间的映射记录。MS Windows高速缓存中的每一条记录(条目)的生存时间一般为60秒,起始时间从被创建时开始算起。
默认情况下,ARP从缓存中读取IP-MAC条目,缓存中的IP-MAC条目是根据ARP响应包动态变化的。因此,只要网络上有ARP响应包发送到本机,即会更新ARP高速缓存中的IP-MAC条目。
攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。
ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。因此,B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.10.3(C的IP地址),MAC地址是DD-DD-DD-DD-DD-DD(C的MAC地址本来应该是CC-CC-CC-CC-CC-CC,这里被伪造了)。当A接收到B伪造的ARP应答,就会更新本地的ARP缓存(A可不知道被伪造了)。
当攻击源大量向局域网中发送虚假的ARP信息后,就会造成局域网中的机器ARP缓存的崩溃。
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 172.20.156.1 0 000b.cd85.a193 ARPA Vlan256
Internet 172.20.156.5 0 000b.cd85.a193 ARPA Vlan256
Internet 172.20.156.254 0 000b.cd85.a193 ARPA Vlan256
Internet 172.20.156.53 0 000b.cd85.a193 ARPA Vlan256
Internet 172.20.156.33 0 000b.cd85.a193 ARPA Vlan256
Internet 172.20.156.13 0 000b.cd85.a193 ARPA Vlan256
Internet 172.20.156.15 0 000b.cd85.a193 ARPA Vlan256
Internet 172.20.156.14 0 000b.cd85.a193 ARPA Vlan256
当局域网内某台主机运行ARP欺骗的木马程序时,会欺骗局域网内所有主机和路由器,让所有上网的流量必须经过病毒主机。其他用户原来直接通过路由器上网现在转由通过病毒主机上网,切换的时候用户会断一次线。切换到病毒主机上网后,如果用户已经登陆了传奇服务器,那么病毒主机就会经常伪造断线的假像,那么用户就得重新登录传奇服务器,这样病毒主机就可以盗号了。
由于ARP欺骗的木马程序发作的时候会发出大量的数据包导致局域网通讯拥塞以及其自身处理能力的限制,用户会感觉上网速度越来越慢。当ARP欺骗的木马程序停止运行时,用户会恢复从路由器上网,切换过程中用户会再断一次线。
在路由器的“系统历史记录”中看到大量如下的信息:
MAC Chged 10.128.103.124
MAC Old 00:01:6c:36:d1:7f
MAC New 00:05:5d:60:c7:18
这个消息代表了用户的MAC地址发生了变化,在ARP欺骗木马开始运行的时候,局域网所有主机的MAC地址更新为病毒主机的MAC地址(即所有信息的MAC New地址都一致为病毒主机的MAC地址),同时在路由器的“用户统计”中看到所有用户的MAC地址信息都一样。
如果是在路由器的“系统历史记录”中看到大量MAC Old地址都一致,则说明局域网内曾经出现过ARP欺骗(ARP欺骗的木马程序停止运行时,主机在路由器上恢复其真实的MAC地址)。
2 预防在先,重要的规避措施
建议用户在可实施的情况根据以下的建议,对网络环境进行重新配置,以避免ARP攻击在网络环境中发生。
a) 不要把你的网络安全信任关系建立在IP基础上或MAC基础上,(rarp同样存在欺骗的问题),理想的关系应该建立在IP+MAC基础上。
b) 设置静态的MAC–>IP对应表,不要让主机刷新你设定好的转换表。
c) 除非很有必要,否则停止使用ARP,将ARP做为永久条目保存在对应表中。
d) 使用ARP服务器。通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确保这台ARP服务器不被黑。
e) 使用””proxy””代理IP的传输。
f) 使用硬件屏蔽主机。设置好你的路由,确保IP地址能到达合法的路径。(静态配置路由ARP条目),注意,使用交换集线器和网桥无法阻止ARP欺骗。
g) 管理员定期用响应的IP包中获得一个rarp请求,然后检查ARP响应的真实性。
h) 管理员定期轮询,检查主机上的ARP缓存。
3 第一步,监控攻击行为和源头
当然,不是所有的网络里面都可以有效的规避此类病毒行为的发作,这个时候可以建立相应的预警机制,使管理员在第一时间发现此类攻击行为,并得知攻击源。有多种工具和方式,以下几种方法罗列供参考,可视自己的网络设备条件酌情使用。
2.1. 第三方IDS或者有IDS功能的防火墙
打开IDS或者防火墙关于检测ARP 欺骗(Spoofing)攻击的设置,并设置触发措施来通知到管理员,从而在第一时间得知ARP欺骗攻击,并得知攻击源的Mac地址。详细方法请参考相关的IDS和防火墙的说明或者技术支持
2.2. 第三方工具
使用AntiArpSniffer定位ARP攻击源。在你的网络里面,找一台机器运行此工具,并定期来监控此工具的检测情况。
工具下载地址:http://www.colorsoft.com.cn/soft/AntiArpSniffer3.zip
a) 功能简介:
帮助侦测定位网络中Arp攻击的来源,并保证遭受Arp攻击的网络中的主机在执行该工具的自动保护功能后能正常的与网关通信
b) 使用说明:
防御ARP欺骗
• 开启Anti ARP Sniffer,输入网关IP地址,点击[枚取MAC]如你网关填写正确将会显示出网关的MAC地址。
• 点击 [自动保护] 即可保护当前网卡与网关的正常通信。
追踪ARP攻击者:
当局域网内有人试图与本机进行ARP欺骗,其数据会被Anti ARP Sniffer记录。在欺骗数据详细记录表中选择需要追踪的行,然后点击[追捕欺骗机],就能查找到攻击源。
2.3. 趋势OfficeScan客户端防火墙
趋势科技OfficeScan客户端防火墙不久将具备监控并预防ARP欺骗的功能,请关注近期的产品通知。
4 第二步,恢复网络
通过以上方法可以快速发现此类攻击行为,并得知攻击源的MAC地址。
这个时候你有两种方法来快速恢复网络。如果你的二层交换机支持单个端口的配置,那么封锁此网卡连接的交换机的端口。
否则,你需要通过资产管理资料,找到这台机器的物理位置,拔调此机器的网线。某些网络可能难以通过MAC地址找到机器的物理位置,这个时候需要用一些迂回的方式,比如大家都不能联网的时候,有一台机器可以,那么一般来说这个机器就是攻击源了。
通过以上两种方式隔离此机器后,等ARP缓存更新后,其他机器即可正常联网。一般来说MS Windows高速缓存中的每一条记录包括ARP的生存时间一般为60秒。
5 第三步,分析并提取ARP攻击源可疑样本
在攻击源机器上,可疑样本收集及处理:
1. 收集信息给趋势科技技术支持中心:使用SIC以及Hijackthis收集,ARP攻击源系统日志进行分析,查找其中的可疑项目。如遇有无法收集有效信息的情况(病毒采用Rootkit技术进行自身的隐藏),使用Icesword(Rootkit检测工具)检查是否有隐藏项目,在Icesword中隐藏的进程、文件和服务会以红色显示。
2. 根据收集的信息收集可疑样本给趋势科技,或者有任何困难和疑惑,请立即联系趋势科技技术支持中心。
3. 趋势科技将提供病毒码以及清除码DCT
附注:
Icesword下载地址:
ftp://202.38.76.151/pub2/Kernel/Windows/tools/IceSword1.18.rar
Icesword使用说明
i. 通过Icesword检查隐藏进程
ii. 通过Icesword检查隐藏服务
iii. 通过Icesword检查隐藏文件

发表评论

邮箱地址不会被公开。 必填项已用*标注