2024年5月8日发(作者:)

维普资讯

《宁夏电力》20o7年第4期 

浅谈ARP病毒攻击的防御技术 

殷学农 

(宁夏中卫供电局, 中卫市755000) 

摘要:针对企业局域网中经常爆发的“ARP欺骗”类病毒,分析了其病毒原理和攻击方式,提出了解决此 

类病毒的防护措施和应对策略。 

关键词:ARP病毒;攻击;防御 

中图分类号:TP309.5 文献标识码: B 文章编号:1672—3643(2007)04-0060—03 

The prevention technology for ARP virus attack 

YIN Xue-nong 

(Ningxia Zhongwei Electric Power Supply Bureau,Zhongwei 755000,China) 

Abstract:Aiming at the”ARP spoofing”virus outbreak frequently in enterprise LAN.analyzes the virus principle 

nad attack methods,puts forward hte defense measures and strategy for hte virus. 

Key words:ARP virus;attack;defense 

1引言 

就是通过目标设备的IP地址,查询目标设备的MAC地址, 

以保证通信的顺利进行。 

“ARP欺骗”类病毒在企业内部网络内屡有发现,在最 

2.1对内网的欺骗 

近一段时间尤其严重,当某台电脑感染了这类ARP欺骗病 

ARP协议的工作原理:在每台安装有TCP/IP协议的电 

毒程序后,会不定期发送伪造的ARP响应数据报文和广播 脑里都有一个ARP缓存表,表里的IP地址与MAC地址是 

报文。受感染电脑发出的这种报文会欺骗所在网段的其他 

一一

对应的: 

电脑,对其他电脑宣称自己的MAC就是网关的MAC,对 

IP址 MAC地址 

实际的网关说其他电脑IP的MAC都是自己的MAC,这样 

192.168.1.1 00-0f-3d-83-74-28 

网关(交换机或路由器)无法学习到上网主机的MAC。更新 

192.168.1.2 O0一aa—)o一62一c5—O3 

不了网关ARP表,就无法转发数据帧。造成所在网段的计 

192.168.1.3 O3一aa—O1—75一c3—O6 

算机无法上网或上网不稳定。 

以主机A(192.168.1.5)向主机B(192.168.1.1)发送数 

2 ARP攻击原理分析 

据为例。当发送数据时。主机A会在自己的ARP缓存表中 

寻找是否有目标IP地址。如果找到了,也就知道了目标 

ARP“Address Resolution Protocol”(地址解析协议),局 

MAC地址,直接把目标MAC地址写人帧里面发送就可以 

域网中,网络中实际传输的是“帧”,帧里面含有目标主机的 了;如果在ARP缓存表中没有找到相对应的IP地址,主机 

MAC地址。所谓“地址解析”就是主机在发送帧前将目标IP A就会在网络上发送一个广播,目标MAC地址是“F.F'.F.F'. 

地址转换成目标MAC地址的过程。ARP协议的基本功能 

FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的 

收稿日期:2007---03—05 

作者简介:殷学农(1977一),男,助理工程师,从事网络与信息系统管理工作。 

6o・ 

维普资讯

《宁夏电力}2007年第4期 

询问:“192.168.1.1的MAC地址是什么?”网络上其它主机 

并不响应ARP询问,只有主机B接收到这个帧时,才向主 

机A做出这样的回应:“192.168.1.1的MAC地址是00一aa— 

oo-62.-c6—09。”这样,主机A就知道了主机B的MAC地 

址,它就可以向主机B发送信息了。同时它还更新了自己 

的ARP缓存表。ARP有如下两种攻击方式。 

攻击方式一:用伪造源MAC地址发送ARP响应包,对 

ARP高速缓存机制的攻击。默认情况下,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.1 ̄3(C的IP 

地址),MAC地 E是DD-DD-DD-DD-DD-DD(C的MAC地址 

本来应该是CC--CC--CC--CC-CC--CC,这里被伪造了)。当A接 

收到B伪造的ARP应答,就会更新本地的ARP缓存(A可不 

知道被伪造了)。通过伪造IP地址和MAC地址实现ARP欺 

骗,能够在网络中产生大量的ARP通信量使网络阻塞或者实 

现“mall in the middle”进行ARP重定向和嗅探攻击。当攻击源 

大量向局域网中发送虚假的ARP信息后,就会造成局域网中 

的机器ARP缓存的崩溃。 

2.2对S 盯rCH的欺骗 

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 

缓存的崩溃,交换机负载过大,网络缓慢,重者造成网络瘫 

痪。如交换机中日志所示: 

Imemet 

l92.168.2.1 

oo00b.ed85.al93 

ARPAVIan256 

Intemet 

l92.168.2.5 

oo00b.ed85.al93 

ARPAVlan256 

Intemet 

l92.168.2.254 

o000b.ed85.a193 ARPAV1an256 

Intemet 

l92.168.2.53 

o000b.ed85.al93 

ARPAVIan256 

Intemet 

l92.168.2-33 

oo00b.ed85.a193 

ARPAVIarl256 

Intemet 

192.168.2.13 

0()0ob.cA85.a1 93 

Af IAVIan256 

浅谈ARP病毒攻击的防御技术 

Intemet l92.168.2.15 O000b.ed85.al93 ARPAVlaIl256 

Intemet 192.168.2.14 O000b.ed85.a193 ARPAV1an256 

ARP病毒发作后,同一个VLAN中的相当数量的主机 

MAC地址会更新为病毒主机的MAC地址。 

3 ARP病毒分析 

当VLAN内某台主机运行ARP欺骗的木马程序时,会 

欺骗VLAN内所有主机和路由器或交换机,让本VLAN所 

有上网的流量必须经过病毒主机。其他用户原来直接通过 

路由器上网现在转由通过病毒主机上网,切换的时候用户 

会断一次线。切换到病毒主机上网后,如果用户已经登录了 

某应用服务器,那么病毒主机就会经常伪造断线的假像,那 

么用户就得重新登录应用服务器,这样病毒主机就可以盗 

取帐号和密码了。 

由于ARP欺骗的木马程序发作的时候会发出大量的 

数据包导致局域网通讯拥塞以及其自身处理能力的限制, 

用户会感觉上网速度越来越慢。当ARP欺骗的木马程序停 

止运行时,用户会恢复从路由器上网,切换过程中用户会再 

断一次线。 

在路由器的“系统历史记录”中可看到大量MAC地址变 

化信息: 

MAC Chged 10.128.103.124 

MAC Old 00:01:6c:36:dl:7f 

MAC New 00:05:5d:60:e7:18 

在PC上查看ARP缓存表: 

Interface:192.168.1.72——_oX2 

Intemet Address Phy ̄eM Address Type 

192.168.1.1 0O—Of_3d一83—74—28 dynamio 

192.168.I.43 0o一13一d3一ef-b2—Oc dynamio 

192.168.1.252 0O—.of-3d一83—74—28 dynamio 

C:\WINDOWSkSystem32>arp—a 

这个消息代表了用户的MAC地址发生了变化,在ARP 

欺骗木马开始运行的时候,局域网所有主机的MAC地址更 

新为病毒主机的MAC地址(即所有信息的MAC New地址 

都一致为病毒主机的MAC地址),同时在路由器的“用户统 

计”中看到所有用户的MAC地址信息都一样。如果是在路 

由器的“系统历史记录”中看到大量MAC Old地址都一致, 

则说明局域网内曾经出现过ARP欺骗(ARP欺骗的木马程 

序停止运行时,主机在路由器上恢复其真实的MAC地址)。 

4 ARP源头定位 

当发生ARP病毒后,首先查找病毒源头。 

4.1主动定位方式 

因为所有的ARP攻击源都会有其特征——网卡会处 

61・ 

维普资讯

《宁夏电力))2007年第4期 浅谈ARP病毒攻击的防御技术 

于混杂模式,可以通过ARPKiller这样的工具扫描网内有 

控制,就能极大地减少该问题的发生。 

哪台机器的网卡是处于混杂模式的,从而判断这台机器有 

(3)在每台pc上绑定网关的IP和MAC地址 

可能就是“元凶”。(标注:网卡可以置于一种模式叫混杂模 在每台PC机上进入dos操作,输入“arp—S 192.168.1.1 

式(promiscuous),在这种模式下工作的网卡能够收到一切 

(网关IP)O0一Of-3d一83—74—28(网关MAC)”,Enter后完成 

通过它的数据,而不管实际上数据的目的地址是不是它。这 

每台PC机的绑定。但是此动作,如果重起了电脑,作用就 

实际就是Sniffer工作的基本原理:让网卡接收一切它所能 

会消失,所以可以把此命令做成一个批处理文件,放在操作 

接收的数据。) 

系统的启动里面,每次开机自动执行批处理命令。批处理文 

4.2被动定位方式 

件可以这样写: 

(1)获取攻击源的MAC地址:在局域网发生ARP攻 

@echo off 

击时,查看交换机的动态ARP表中的内容,确定攻击源的 

arp--d 

MAC地址:也可以在局域网中部署Sniffer工具,定位ARP 

arp—S网关IP网关MAC 

攻击源的MAC;也可以直接Ping网关IP,完成Ping后,用 

(4)预防性工作:用户安装杀毒软件,及时更新病毒代 

ARP—a查看网关IP对应的MAC地址,此MAC地址应该 

码。定期对机器进行病毒扫描;给系统安装补丁程序,通过 

为欺骗的MAC。 

WindowS Uodate安装好系统补丁程序(关键更新、安全更新 

(2)查找MAC对应的IP:使用NBTSCAN可以取到PC 和Service Pack);给系统管理员帐户设置足够复杂的强密 

的真实IP地址、机器名和MAC地址,如果有“ARP攻击”在 

码,最好能是12位以上,字母+数字+符号的组合,也可以禁 

做怪,可以找到装有ARP攻击的PC的IP、机器名和MAC 用删除一些不使用的帐户;安装并使用网络防火墙软件, 

地址。 

网络防火墙在防病毒过程中也可以起到至关重要的作用, 

假设查找一台MAC地址为‘'O00d870d585f’的病毒主机。 

能有效地阻挡来自网络的攻击和病毒的入侵。关闭一些不 

①在出现的DOS窗口中输入:c:btsean—r 192,168.16,1/ 

需要的服务,条件允许的可关闭一些没有必要的共享,也包 

24(这里需要根据用户实际网段输入),回车。 

括C¥、D¥等管理共享。不要随便点击打开QQ、MSN等聊天 

②通过查询IP—MAc对应表,查出“000d870d585f” 

工具上发来的链接信息,不要随便打开或运行陌生、可疑文 

的病毒主机的IP地址为“192.168.16.223”。 

件和程序,如邮件中的陌生附件,外挂程序等。 

通过上述方法,就能够快速的找到病毒源,确认其 

MAC——)机器名和IP地址。 

6结束语 

5 防御方法 

ARP攻击的防御是一个任重而道远的过程,必须高度 

重视这个问题,不能大意马虎,采取以上技术可以帮助我们 

(1)在三层交换机(或路由器)端口上绑定客户端MAC 

随时警惕ARP攻击,减少受到的危害,提高工作效率,降低 

和IP,限制ARP流量,及时发现并自动阻断ARP攻击端 经济损失。 

口,合理划分VLAN,彻底阻止盗用IP、MAC地址,杜绝 

ARP的攻击。 

参考文_献: 

(2)对于经常爆发病毒的网络,进行Intemet访问控 

[1]宋晓辉.ARP病毒攻击机理与防御.网络安全技术与应用 

制,限制用户对网络的访问。此类ARP攻击程序一般都是 

2006. 

从Internet下载到用户终端,如果能够加强用户上网的访问 

[2]雷震甲.网络工程师教程.北京:清华大学出版社,2004. 

62・