电脑技术学习

局域网ARP病毒快速诊断及解决方案

dn001

最近ARP病毒极为猖獗,许多校园网及网吧因受到攻击而导致网络缓慢、时断时续或者彻底无法上网。笔者的单位近期也不幸遭碰到了ARP病毒攻击,刚开始经过反复检查网线,及网络状况,发现并无断线的情况,无奈之后上网查找资料才确定系ARP病毒捣鬼。

病毒故障现象及诊断

情况一:在局域网中当有用户木马程序通过ARP欺骗对网络进行攻击,中毒的计算机会根据该网络的设置,克隆一个服务器或者路由器的IP地址和MAC地址出来,以此来截获网内发往外网的数据,这是典型的ARP欺骗案例。在攻击的过程中,被攻击的电脑常表现为忽然不能上网,过段时间又能上网,常会反复掉线。

情况二:在局域网中某台电脑感觉ARP病毒后,会在网络中不断地向其实计算机发送ARP欺骗,让原本流向网关的流量改道流向病毒主机,造成受害者上网网速变慢,经常出现掉线的情况。

情况三:在局域网当有ARP欺骗发生时,在IP地址设置正常的情况下,可能电脑会显示“IP地址冲突”。

如网络用户在使用计算机过程中,忽然发现无法上网,可以先禁用网卡,然后再启用,假如启用之后能上网,就有可能是ARP病毒所致。

另外,也可以通过下如操作进行诊断:点击"开始"

按钮->选择"运行"->输入"arp -d"->点击"确定"按钮,然后重新尝试上网,假如能恢复正常,则说明此次掉线可能是受ARP欺骗所致。

注:"arp -d"命令用于清除并重建本机arp表。"arp -d"命令并不能抵御ARP欺骗,执行后仍有可能再次遭受ARP攻击。

局域网ARP病毒快速诊断及解决方案

图1

故障解决办法

可以使用ARP -S命令捆绑IP地址和MAC地址,将网内所有客户端都按找这个方法做好捆绑,确保其的唯一性。

编写批处理文件如下:

@echo OFF

if %~n0==arp exit

if %~n0==Arp exit

if %~n0==ARP exit

echo 正在获取本机信息.....

:IP

FOR /f "skip=13 tokens=15 usebackq " %%i in (`ipconfig /all`) do Set IP=%%i && GOTO MAC

:MAC

echo IP:%IP%

FOR /f "skip=13 tokens=12 usebackq " %%i in (`ipconfig /all`) do Set MAC=%%i && GOTO GateIP

:GateIP

echo MAC:%MAC%

arp -s %IP% %MAC%

echo 正在获取网关信息.....

FOR /f "skip=17 tokens=13 usebackq " %%i in (`ipconfig /all`) do Set GateIP=%%i && GOTO GateMac

:GateMac

echo IP:%GateIP%

FOR /f "skip=3 tokens=2 usebackq " %%i in (`arp -a %GateIP%`) do Set GateMAC=%%i && GOTO Start

:Start

echo MAC:%GateMAC%

arp -d

arp -s %GateIP% %GateMAC%

echo 操作完成!!!

exit

把以上批处理另存为ARP.BAT,然后把文件拖到“windows--开始--程序--启动”中即可。假如是在网吧中,可以利用收费软件服务端程序(pubwin或者万象都可以)发送批处理文件rarp.bat到所有客户机的启动目录。

使用以上的方法绑定IP及网关之后,建议各位网友另外再安装ARP防火墙(ARP防火墙免费下载),彻底拒绝病毒于大门之外。