|
发表于 2010-9-19 20:09:16
|
显示全部楼层
|阅读模式
来自 内蒙古赤峰市巴林左旗
决战ARP病毒arp -s 192.168.1.1 08-10-17-f8-6a-4b
从上周起,在单位上网时发生的怪事就一直困扰着我,起初以为是网络不稳定才出现时断时续的现象,并没有引起我太大的注意,可事过两天,该现象却越来越严重,发生频率也是越来越高,同时其他同事的电脑也是同样无法正常上网,故障跟我的一模一样,这引起了我的注意,于是决定把这个问题调查个水落石出。
初期的判断主要是围绕着我自己的电脑展开,在进行了查毒和系统的重装后,竟然问题依旧,难道问题不是出在我这台电脑上吗?带着问题我打开了百度的搜索网页,查了一下网络时断时续的相关资料,果然这种现象是近期的一个热点,原因是中了一种arp的木马病毒,它的原理是将网关的MAC地址改写,直接导致访问网关的电脑无法正确找到网关设备,使网络无法正确连接而造成网络瘫痪。经过进一步调查发现,该木马程序的出现是局域网内有人使用ARP欺骗的木马程序(比如:传奇*****的软件,某些传奇外挂中也被恶意加载了此程序)。而现象却是网络内所有的电脑都无法正确访问网关导致无法上网,所以单从自己的电脑发向去调查,肯定会是毫无收获的,因为自己的电脑也只是受害电脑之一。
解决方案有两种:
一.是临时应急型,可暂时解决不能上网的问题,而不是彻底清除病毒:只需使用Windows系统自带的arp命令即可完成。方法如下:点击开始,运行,输入“arp -s 网关地址 网关MAC地址”,这样即可使网关地址与真正的网关MAC地址绑定,使得局域网内病毒主机无法再进行干扰!但问题是此方法在计算机重启后自动失效,想再次使用必须重复上述操作。
二.是彻底清除型,此方法必须将网内受感染的病毒主机找出,若局域网只连几台电脑,则查找难度则很低,只要将病毒主机查出并杀毒即可解决问题。但局域网若是带了几十甚至几百台电脑主机时,查找的难度则会增加很多……
问题既然找出,下一步就要搜查病毒主机了。由于单位上网的小局域网内只连有五、六台左右的电脑,这使查找难度降低很多。但也并非一帆风顺,因为病毒主机伪装的MAC地址并没有使用它自己的网卡MAC地址,而是虚构了一个地址,这使我再次陷入迷茫!但后来在使用arp -a命令时发现总有一个IP地址会出现(此IP既不是我电脑的,也不是网关的),我由此怀疑这个IP地址就是一切故障的始作蛹者,于是我坚决地在集线器上找到了这个IP对应的网线并将之拨掉,果然在没有这台病毒主机干扰后,网络终于恢复了正常。至此由该arp病毒引发的上网时断时续问题随着这台病毒主机被抓出而划上了完美的句号。
ARP病毒---导致网络(ping)时断时通---解决办法
【解决思路】
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的欺骗有可能导致陷阱包丢失。
【HiPER用户的解决方案】
建议用户采用双向绑定的方法解决并且防止ARP欺骗。
1、在PC上绑定路由器的IP和MAC地址:
1)首先,获得路由器的内网的MAC地址(例如HiPER网关地址192.168.16.254的MAC地址为0022aa0022aa局域网端口MAC地址>)。
2)编写一个批处理文件rarp.bat内容如下:
@echo off
arp -d
arp -s 192.168.16.254 00-22-aa-00-22-aa
将文件中的网关IP地址和MAC地址更改为您自己的网关IP地址和MAC地址即可。
将这个批处理软件拖到“windows--开始--程序--启动”中。
rp
显示和修改“地址解析协议 (ARP)”缓存中的项目。ARP 缓存中包含一个或多个表,它们用于存储 IP 地址及其经过解析的以太网或令牌环物理地址。计算机上安装的每一个以太网或令牌环网络适配器都有自己单独的表。如果在没有参数的情况下使用,则 arp 命令将显示帮助信息。
语法
arp[-a [InetAddr] [-N IfaceAddr]] [-g [InetAddr] [-N IfaceAddr]] [-d InetAddr [IfaceAddr]] [-s InetAddr EtherAddr [IfaceAddr]]
参数
-a[ InetAddr] [ -N IfaceAddr]
显示所有接口的当前 ARP 缓存表。要显示特定 IP 地址的 ARP 缓存项,请使用带有 InetAddr 参数的 arp -a,此处的 InetAddr 代表 IP 地址。如果未指定 InetAddr,则使用第一个适用的接口。要显示特定接口的 ARP 缓存表,请将 -N IfaceAddr 参数与 -a 参数一起使用,此处的 IfaceAddr 代表指派给该接口的 IP 地址。-N 参数区分大小写。
-g[ InetAddr] [ -N IfaceAddr]
与 -a 相同。
-d InetAddr [IfaceAddr]
删除指定的 IP 地址项,此处的 InetAddr 代表 IP 地址。对于指定的接口,要删除表中的某项,请使用 IfaceAddr 参数,此处的 IfaceAddr 代表指派给该接口的 IP 地址。要删除所有项,请使用星号 (*) 通配符代替 InetAddr。
-s InetAddr EtherAddr [IfaceAddr]
向 ARP 缓存添加可将 IP 地址 InetAddr 解析成物理地址 EtherAddr 的静态项。要向指定接口的表添加静态 ARP 缓存项,请使用 IfaceAddr 参数,此处的 IfaceAddr 代表指派给该接口的 IP 地址。
/?
在命令提示符下显示帮助。
注释
? InetAddr 和 IfaceAddr 的 IP 地址用带圆点的十进制记数法表示。
? EtherAddr 的物理地址由六个字节组成,这些字节用十六进制记数法表示并且用连字符隔开(比如,00-AA-00-4F-2A-9C)。
按以下顺序删除病毒组件
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攻击源头和防御方法
1.定位ARP攻击源头
主动定位方式:因为所有的ARP攻击源都会有其特征——网卡会处于混杂模式,可以通过ARPKiller这样的工具扫描网内有哪台机器的网卡是处于混杂模式的,从而判断这台机器有可能就是“元凶”。定位好机器后,再做病毒信息收集,提交给趋势科技做分析处理。
标注:网卡可以置于一种模式叫混杂模式(promiscuous),在这种模式下工作的网卡能够收到一切通过它的数据,而不管实际上数据的目的地址是不是它。这实际就是Sniffer工作的基本原理:让网卡接收一切它所能接收的数据。
被动定位方式:在局域网发生ARP攻击时,查看交换机的动态ARP表中的内容,确定攻击源的MAC地址;也可以在局域居于网中部署Sniffer工具,定位ARP攻击源的MAC。
也可以直接Ping网关IP,完成Ping后,用ARP –a查看网关IP对应的MAC地址,此MAC地址应该为欺骗的MAC。
使用NBTSCAN可以取到PC的真实IP地址、机器名和MAC地址,如果有”ARP攻击”在做怪,可以找到装有ARP攻击的PC的IP、机器名和MAC地址。
命令:“nbtscan -r 192.168.16.0/24”(搜索整个192.168.16.0/24网段, 即192.168.16.1-192.168.16.254);或“nbtscan 192.168.16.25-137”搜索192.168.16.25-137 网段,即192.168.16.25-192.168.16.137。输出结果第一列是IP地址,最后一列是MAC地址。
NBTSCAN的使用范例:
假设查找一台MAC地址为“000d870d585f”的病毒主机。
1)将压缩包中的nbtscan.exe 和cygwin1.dll解压缩放到c:下。
2)在Windows开始—运行—打开,输入cmd(windows98输入“command”),在出现的DOS窗口中输入:C: btscan -r 192.168.16.1/24(这里需要根据用户实际网段输入),回车。
3)通过查询IP--MAC对应表,查出“000d870d585f”的病毒主机的IP地址为“192.168.16.223”。
通过上述方法,我们就能够快速的找到病毒源,确认其MAC——〉机器名和IP地址。
2.防御方法
a.使用可防御ARP攻击的三层交换机,绑定端口-MAC-IP,限制ARP流量,及时发现并自动阻断ARP攻击端口,合理划分VLAN,彻底阻止盗用IP、MAC地址,杜绝ARP的攻击。
b.对于经常爆发病毒的网络,进行Internet访问控制,限制用户对网络的访问。此类ARP攻击程序一般都是从Internet下载到用户终端,如果能够加强用户上网的访问控制,就能极大的减少该问题的发生。
c.在发生ARP攻击时,及时找到病毒攻击源头,并收集病毒信息,可以使用趋势科技的SIC2.0,同时收集可疑的病毒样本文件,一起提交到趋势科技的TrendLabs进行分析,TrendLabs将以最快的速度提供病毒码文件,从而可以进行ARP病毒的防御。
该病毒发作时候的特征为,中毒的机器会伪造某台电脑的MAC地址,如该伪造地址为网关服务器的地址,那么对整个网吧均会造成影响,用户表现为上网经常瞬断。
一、在任意客户机上进入命令提示符(或MS-DOS方式),用arp –a命令查看:
C:\WINNT\system32>arp -a
Interface: 192.168.0.193 on Interface 0x1000003
Internet Address Physical Address Type
192.168.0.1 00-50-da-8a-62-2c dynamic
192.168.0.23 00-11-2f-43-81-8b dynamic
192.168.0.24 00-50-da-8a-62-2c dynamic
192.168.0.25 00-05-5d-ff-a8-87 dynamic
192.168.0.200 00-50-ba-fa-59-fe dynamic
可以看到有两个机器的MAC地址相同,那么实际检查结果为
00-50-da-8a-62-2c为192.168.0.24的MAC地址,192.168.0.1的实际MAC地址为00-02-ba-0b-04-32,我们可以判定192.168.0.24实际上为有病毒的机器,它伪造了192.168.0.1的MAC地址。
二、在192.168.0.24上进入命令提示符(或MS-DOS方式),用arp –a命令查看:
C:\WINNT\system32>arp -a
Interface: 192.168.0.24 on Interface 0x1000003
Internet Address Physical Address Type
192.168.0.1 00-02-ba-0b-04-32 dynamic
192.168.0.23 00-11-2f-43-81-8b dynamic
192.168.0.25 00-05-5d-ff-a8-87 dynamic
192.168.0.193 00-11-2f-b2-9d-17 dynamic
192.168.0.200 00-50-ba-fa-59-fe dynamic
可以看到带病毒的机器上显示的MAC地址是正确的,而且该机运行速度缓慢,应该为所有流量在二层通过该机进行转发而导致,该机重启后网吧内所有电脑都不能上网,只有等arp刷新MAC地址后才正常,一般在2、3分钟左右。
三、如果主机可以进入dos窗口,用arp –a命令可以看到类似下面的现象:
C:\WINNT\system32>arp -a
Interface: 192.168.0.1 on Interface 0x1000004
Internet Address Physical Address Type
192.168.0.23 00-50-da-8a-62-2c dynamic
192.168.0.24 00-50-da-8a-62-2c dynamic
192.168.0.25 00-50-da-8a-62-2c dynamic
192.168.0.193 00-50-da-8a-62-2c dynamic
192.168.0.200 00-50-da-8a-62-2c dynamic
该病毒不发作的时候,在代理服务器上看到的地址情况如下:
C:\WINNT\system32>arp -a
Interface: 192.168.0.1 on Interface 0x1000004
Internet Address Physical Address Type
192.168.0.23 00-11-2f-43-81-8b dynamic
192.168.0.24 00-50-da-8a-62-2c dynamic
192.168.0.25 00-05-5d-ff-a8-87 dynamic
192.168.0.193 00-11-2f-b2-9d-17 dynamic
192.168.0.200 00-50-ba-fa-59-fe dynamic
病毒发作的时候,可以看到所有的ip地址的mac地址被修改为00-50-da-8a-62-2c,正常的时候可以看到MAC地址均不会相同。
解决办法:
一、采用客户机及网关服务器上进行静态ARP绑定的办法来解决。
1. 在所有的客户端机器上做网关服务器的ARP静态绑定。
首先在网关服务器(代理主机)的电脑上查看本机MAC地址
C:\WINNT\system32>ipconfig /all
Ethernet adapter 本地连接 2:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Intel? PRO/100B PCI
Adapter (TX)
Physical Address. . . . . . . . . : 00-02-ba-0b-04-32
Dhcp Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.0.1
Subnet Mask . . . . . . . . . . . : 255.255.255.0
然后在客户机器的DOS命令下做ARP的静态绑定
C:\WINNT\system32>arp –s 192.168.0.1 00-02-ba-0b-04-32
注:如有条件,建议在客户机上做所有其他客户机的IP和MAC地址绑定。
2. 在网关服务器(代理主机)的电脑上做客户机器的ARP静态绑定
首先在所有的客户端机器上查看IP和MAC地址,命令如上。
然后在代理主机上做所有客户端服务器的ARP静态绑定。如:
C:\winnt\system32> arp –s 192.168.0.23 00-11-2f-43-81-8b
C:\winnt\system32> arp –s 192.168.0.24 00-50-da-8a-62-2c
C:\winnt\system32> arp –s 192.168.0.25 00-05-5d-ff-a8-87
。。。。。。。。。
3. 以上ARP的静态绑定最后做成一个windows自启动文件,让电脑一启动就执行以上操作,保证配置不丢失。
二、有条件的网吧可以在交换机内进行IP地址与MAC地址绑定
三、IP和MAC进行绑定后,更换网卡需要重新绑定,因此建议在客户机安装杀毒软件来解决此类问题:该网吧发现的病毒是变速齿轮2.04B中带的,病毒程序在
http://www.wgwang.com/list/3007.html 可下载到:
1、 KAV(卡巴斯基),可杀除该病毒,病毒命名为:TrojanDropper.Win32.Juntador.c
杀毒信息:07.02.2005 10:48:00 C:\Documents and
Settings\Administrator\Local Settings\Temporary Internet
Files\Content.IE5\B005Z0K9\Gear_Setup[1].exe infected
TrojanDropper.Win32.Juntador.c
2、 瑞星可杀除该病毒,病毒命名为:TrojanDropper. |
|