局域网受到ARP欺骗攻击的研究

摘要:ARP病毒发作时,通常会造成网络掉线,但网络连接正常,内网的部分电脑不能上网,或者所有电脑均不能上网,无法打开网页或打开网页慢以及局域网连接时断时续并且网速较慢等现象,严重影响到局域网的正常运行。ARP病毒之所以会反复发作,主要是由于目前网页木马都是利用微软的MS06-014和MS07-017两个漏洞进入到系统里面的。有报告称ARP病毒位列十大病毒排行榜第四位,而且目前ARP地址欺骗技术已经被越来越多的病毒所采用,成为病毒发展的一个新趋势。

关键词:ARP;IP地址;MAC地址;局域网;病毒

中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)18-31543-03

The Bureau Area Net Suffers the ARP Research of Cheating the Attack

LI Guan-xiong1,2

(1.Experiment center,Hunan Internationnal Economics University,Hunan China;2.Hunan Nan Tian Industry And Commerce Limited Company,Hunan China)

Abstract:When the virus of ARP go into action, will usually result in the network drop the line, but the network conjunction is normal, parts of computers of the inside net can"t internet access, or all computers all can"t internet access, can"t open the web page or open the web page slow and bureau area net conjunction intermittence and soon slow etc. in net phenomenon, affect the normal movement of the bureau area net seriously.The virus of ARP of so will go into action again and again, make use of the MS06-014 of the Microsoft because of the current web page wood horse primarily to enter the system with MS07-017 two loopholes of.There is report calling ARP virus a row ten greatest viruses ranking the fourth, and the current ARP address cheats the technique already drive an adoption, become a new trend that virus develop.

Key words:ARP;IP address;MAC address;Bureau area net;Virus

近期,一种新型的“ ARP 欺骗”木马病毒正在局域网(校园网、小区网、公司网和网吧)中扩散,严重影响了局域网的正常运行。感染此木马的计算机试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。ARP欺骗木马的中毒现象表现为:使用局域网时会突然掉线,过一段时间后又会恢复正常。比如客户端状态频频变红,用户频繁断网,IE浏览器频繁出错,以及一些常用软件出现故障等。如果局域网是通过身份认证上网的,会突然出现可认证,但不能上网的现象(无法ping通网关),重启机器或在“命令提示符”窗口下运行命令arp -d后,又可恢复上网。ARP欺骗木马十分猖狂,危害也特别大,ARP欺骗木马只需成功感染一台电脑,就可能导致整个局域网都无法上网,严重的甚至可能带来整个网络的瘫痪。ARP病毒之所以会反复发作,主要是由于目前网页木马都是利用微软的MS06-014和MS07-017两个漏洞进入到系统里面的。

1 ARP

1.1 ARP协议的工作原理

ARP(Address ResolutionProtocol,地址解析协议)是一个位于TCP/IP协议栈中的低层协议,负责将某个IP地址解析成对应的MAC地址。局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。ARP协议的工作原理:在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如下表所示:

我们以主机A(192.168.15.1)向主机B(192.168.15.2)发送数据为例,当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址,如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.15.2的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.15.2的MAC地址是00-10-5C-E9-D2-ED”,这样主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了,同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。

1.2 ARP欺骗的原理:

ARP协议对网络安全具有重要的意义,通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。从1.1的分析可以看出,ARP协议的基础就是信任局域网内所有的人,那么就很容易实现在以太网上的ARP欺骗。对目标A进行欺骗,A去Ping主机C却发送到了00-10-5C-EA-02-F5这个地址上。如果进行欺骗的时候,把C的MAC地址骗为00-10-5C-EA-02-F5,于是A发送到C上的数据包都变成发送给D的了。这不正好是D能够接收到A发送的数据包了么,嗅探成功。A对这个变化一点都没有意识到,但是接下来的事情就让A产生了怀疑,因为A和C连接不上了,D对接收到A发送给C的数据包可没有转交给C。进行ARP重定向,打开D的IP转发功能,A发送过来的数据包,转发给C,好比一个路由器一样。不过,假如D发送ICMP重定向的话就中断了整个计划。D直接进行整个包的修改转发,捕获到A发送给C的数据包,全部进行修改后再转发给C,而C接收到的数据包完全认为是从A发送来的。不过,C发送的数据包又直接传递给A,倘若再次进行对C的ARP欺骗,现在D就完全成为A与C的中间桥梁了,对于A和C之间的通讯就可以了如指掌了。通过对 ARP工作原理得知,如果系统ARP缓存表被修改不停的通知路由器一系列错误的内网IP或者干脆伪造一个假的网关进行欺骗的话,网络就肯定会出现大面积的掉线问题,这样的情况就是典型的ARP攻击。

1.3对遭受ARP攻击的判断:

1.3.1找到出现问题的电脑在“开始”→“程序”→“附件”菜单下调出“命令提示符”,ping路由器的LAN IP丢包情况。输入ping 192.168.15.1 -t(局域网的网关IP地址),如下:Reply from 192.168.15.1:bytes=32 time<1ms TTL=64

Reply from 192.168.15.1:bytes=32 time<1ms TTL=64

Request timed out.

Request timed out.

Request timed out.

Reply from 192.168.15.1:bytes=32 time<1ms TTL=64

Reply from 192.168.15.1:bytes=32 time<1ms TTL=64

┉┉

内网ping路由器的LAN IP丢几个包,然后又连上,这很有可能是中了ARP攻击。为了进一步确认,我们可以通过查找ARP表来判断。输入ARP -a命令,显示如下:

Interface: 192.168.15.67---0x2

Internet Address Physical Address Type

192.168.15.100-d0-f8-d8-f2-88 dynamic

192.168.15.43 00-0c-76-64-70-39dynamic

192.168.15.14500-d0-f8-d8-f2-88 dynamic

c:\Documents and settings\Administrator>

可以看出192.168.15.1地址和192.168.15.145地址的IP的 MAC地址都是00-d0-f8-d8-f2-88,很显然,这就是 ARP欺骗造成的。

1.3.2检查本机的“ ARP 欺骗”木马染毒进程,同时按住键盘上的“ CTRL ”和“ ALT ”及“ DEL ”键,选择“任务管理器”,点选“进程”标签,查看其中是否有一个名为“ MIR0.dat ”的进程。如果有,则说明已经遭受ARP攻击。(应该结束该进程)

1.3.3从影响网络连接通畅的方式来看,ARP欺骗分为二种,一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。第一种ARP欺骗的原理是——截获网关数据。它通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。第二种ARP欺骗的原理是——伪造网关。它的原理是建立假网关,让被它欺骗的PC向假网关发数据,而不是通过正常的路由器途径上网。在PC看来,就是上不了网了,“网络掉线了”(无法ping通网关)。重启机器或在“命令提示符”窗口下运行命令arp -d后,又可恢复上网。

1.3.4查找网内感染“ ARP 欺骗”木马染毒的计算机

在“开始”→“程序”→“附件”菜单下调出“命令提示符”。输入并执行以下命令: ipconfig

记录网关 IP 地址,即“ Default Gateway ”对应的值,例如“ 192.168.15.1 ”。再输入并执行以下命令:arp –a

在“ Internet Address ”下找到上步记录的网关 IP 地址,记录其对应的物理地址,即“ Physical Address”值,例如“ 00-d0-f8-d8-f2-88 ”。在网络正常时这就是网关的正确物理地址,在网络受“ ARP 欺骗”木马影响而不正常时,它就是木马所在计算机的网卡物理地址。也可以扫描本子网内的全部 IP 地址,然后再查 ARP 表。如果有一个 IP 对应的物理地址与网关的相同,那么这个 IP 地址和物理地址就是中毒计算机的 IP 地址和网卡物理地址。

2 ARP病毒的防范措施

2.1编辑一个注册表问题,键值如下:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]“MAC”=“arp -s网关IP地址 网关MAC地址”

然后保存成Reg文件以后在每个客户端上点击导入注册表。

2.2做好IP-MAC地址的绑定工作(即将IP地址与硬件识别地址绑定),在交换机和客户端都要绑定,这是可以使局域网免疫ARP病毒侵扰的好办法。

2.2.1.态ARP绑定网关

2.2.1.1在能正常上网时,进入“命令提示符”窗口,输入命令:arp -a,查看网关的IP对应的正确MAC地址, 并将其记录下来。(注意:如果已经不能上网,则先运行一次命令arp -d将arp缓存中的内容删空,计算机可暂时恢复上网(攻击如果不停止的话))。一旦能上网就立即将网络断掉(禁用网卡或拔掉网线),再运行arp -a。

2.2.1.2 如果计算机已经有网关的正确MAC地址,在不能上网只需手工将网关IP和正确的MAC地址绑定,即可确保计算机不再被欺骗攻击。

要想手工绑定,可在“命令提示符”窗口下运行以下命令:

arp -s 网关IP 网关MAC

例如:假设计算机所处网段的网关为192.168.15.1,本机地址为192.168.15.67,在计算机上运行arp -a后输出如下:

c:\Documents and settings\Administrator>arp -a

Interface: 192.168.15.67---0x2

Internet Address Physical Address Type

192.168.15.100-d0-f8-d8-f2-88 dynamic

c:\Documents and settings\Administrator>

其中,00-d0-f8-d8-f2-88就是网关192.168.15.1对应的MAC地址,类型是动态(dynamic)的,因此是可被改变的。

被攻击后,再用该命令查看,就会发现该MAC已经被替换成攻击机器的MAC。如果希望能找出攻击机器,彻底根除攻击,可以在此时将该MAC记录下来,为以后查找该攻击的机器做准备。

手工绑定的命令为: arp -s 192.168.15.1 00-d0-f8-d8-f2-88

绑定完,可再用arp -a查看arp缓存:

c:\Documents and settings\Administrator>arp -a

Interface: 192.168.15.67---0x2

Internet Address Physical Address Type

192.168.15.100-d0-f8-d8-f2-88static

c:\Documents and settings\Administrator>

这时,类型变为静态(static),就不会再受攻击影响了。

但是,需要说明的是,手工绑定在计算机关机重启后就会失效,需要再次重新绑定。所以,要彻底根除攻击,只有找出网段内被病毒感染的计算机,把病毒杀掉,才算是真正解决问题。

2.3全网所有的电脑都打上MS06-014和MS07-017这两个补丁,这样可以免疫绝大多数网页木马,防止在浏览网页的时候感染病毒。

MS06-014 中文版系统补丁下载地址:

/china/technet/security/bulletin/MS06-014.mspx

MS07-017 中文版系统补丁下载地址:

/china/technet/security/bulletin/MS07-017.mspx

2.4禁用系统的自动播放功能,防止病毒从U盘、移动硬盘、MP3等移动存储设备进入到计算机。禁用Windows 系统的自动播放功能的方法:在运行中输入 gpedit.msc 后回车,打开组策略编辑器,依次点击:计算机配置→管理模板→系统→关闭自动播放→已启用→所有驱动器→确定。

2.5作批处理文件

在客户端做对网关的arp绑定,具体操作步骤如下:

步骤一:查找本网段的网关地址,比如192.168.15.1,以下以此网关为例。在正常上网时,“开始→运行→cmd→确定”,输入:arp -a,点回车,查看网关对应的Physical Address。

比如:网关192.168.15.1 对应00-d0-f8-d8-f2-88。

步骤二:编写一个批处理文件rarp.bat,内容如下:

@echo off

arp -d

arp -s 192.168.15.1 00-d0-f8-d8-f2-88

将文件中的网关IP地址和MAC地址更改为您自己的网关IP地址和MAC地址即可

保存为:rarp.bat。

步骤三:运行批处理文件将这个批处理文件拖到“Windows→开始→程序→启动”中,如果需要立即生效,请运行此文件。

注意:以上配置需要在网络正常时进行

2.6.使用安全工具软件

及时下载Anti ARP Sniffer软件保护本地计算机正常运行,具体使用方法这里不细说。

如果已有病毒计算机的MAC地址,可使用NBTSCAN等软件(下载地址:.cn/upload/nbtscan.rar)找出网段内与该MAC地址对应的IP,即感染病毒的计算机的IP地址,然后对其进行查封。或者利用单位提供的集中网络防病毒系统来统一查杀木马。另外还可以利用木马杀毒等安全工具进行查杀。

2.7在网络正常的时候保存好全网的IP-MAC地址对照表,这样在查找ARP中毒电脑时很方便。部署网络流量检测设备,时刻监视全网的ARP广播包,查看其MAC地址是否正确。部署网络版的正版杀毒软件,定期升级病毒库,定期全网杀毒。网络管理管理人员利用上面介绍的ARP木马检测方法在局域网的交换机上查出受感染该病毒的端口后,立即关闭中病毒的端口,通过端口查出相应的用户并通知其彻底查杀病毒。而后,做好单机防范,在其彻底查杀病毒后再开放其相应的交换机端口,重新开通上网。

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

推荐访问:局域网 欺骗 攻击 研究 ARP