ARP欺骗的防御策略

2024-06-10

ARP欺骗的防御策略(精选7篇)

ARP欺骗的防御策略 第1篇

1 什么是ARP协议及其工作原理

ARP协议是“Address Resolution Protocol” (地址解析协议) 的缩写。在局域网中, 网络中实际传输的是“帧”, 帧里面是有目标主机的MAC地址的。在以太网中, 一个主机要和另一个主机进行直接通信, 必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标I P地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址, 查询目标设备的MAC地址, 以保证通信的顺利进行。

首先, 每台主机都会在自己的A R P缓冲区中建立一个A R P列表, 以表示I P地址和M A C地址的对应关系。当源主机需要将一个数据包要发送到目的主机时, 会首先检查自己ARP列表中是否存在该IP地址对应的M A C地址, 如果有, 就直接将数据包发送到这个M A C地址;如果没有, 就向本地网段发起一个A R P请求的广播包, 查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的I P地址、硬件地址、以及目的主机的I P地址。网络中所有的主机收到这个A R P请求后, 会检查数据包中的目的I P是否和自己的I P地址一致。如果不相同就忽略此数据包;如果相同, 该主机首先将发送端的MAC地址和I P地址添加到自己的A R P列表中, 如果A R P表中已经存在该I P的信息, 则将其覆盖, 然后给源主机发送一个A R P响应数据包, 告诉对方自己是它需要查找的M A C地址;源主机收到这个A R P响应数据包后, 将得到的目的主机的I P地址和M A C地址添加到自己的ARP列表中, 并利用此信息开始数据的传输。如果源主机一直没有收到A R P响应数据包, 表示A R P查询失败。

例如:

A的地址为:IP:192.168.10.1 MAC:AA-BB-CC-DD-EE-FF

B的地址为:IP:192.168.10.2 MAC:00-AA-BB-CC-DD-EE

根据上面的所讲的原理, 我们简单说明这个过程:A要和B通讯, A就需要知道B的以太网地址, 于是A发送一个A R P请求广播 (谁是1 9 2.1 6 8.1 0.2, 请告诉1 9 2.1 6 8.1 0.1) , 当B收到该广播, 就检查自己, 结果发现和自己的一致, 然后就向A发送一个ARP单播应答 (192.168.10.2在00-AA-BB-CC-DD-EE) 。

2 ARP欺骗过程

从A R P协议的工作原理中我们可以看出, A R P协议设计的前提是运行在彼此相互信任的网络环境下, 那么就很容易实现在以太网上的A R P欺骗。假如对源主机进行欺骗, 当源主机在其A R P缓存中无法找到目标主机的M A C地址, 就在局域网中发一个广播报文进行询问。此时, 假如把目标主机的M A C地址欺骗为一个非目标主机的M A C地址, 那么源主机发送到目标主机上的数据包就都发送到A R P欺骗主机上了。这种欺骗的最终结果就是导致源主机和目标主机之间不能正常进行通讯, 如果欺骗行为表现为对网关M A C地址的欺骗, 就会导致整个网段全部或部分主机断网。

3 ARP的防御策略

3.1 静态绑定

最常用的方法就是做I P和M A C静态绑定, 在网内把主机和网关都做I P和M A C绑定。欺骗是通过A R P的动态实时的规则欺骗内网机器, 所以我们把A R P全部设置为静态可以解决对内网P C的欺骗, 同时在网关也要进行IP和MAC的静态绑定, 这样双向绑定才比较保险。

方法:对每台主机进行I P和MAC地址静态绑定。

通过命令, arp-s可以实现“arp–s IP MAC地址”。

例如:“arp–s192.168.10.1 AA-BB-CC-DD-EE-FF”。

如果设置成功会在P C上面通过执行arp-a可以看到相关的提示:Internet Address Physical Address Type

192.168.10.1AA-BB-CC-DD-EE-FF static (静态)

一般不绑定, 在动态的情况下:

Internet AddressPhysical AddressType

192.168.10.1 AA-BB-CC-DD-EE-FF dynamic (动态)

说明:对于网络中有很多主机, 1 0 0台1 0 0 0台……, 如果我们这样每一台都去做静态绑定, 工作量是非常大的……, 这种静态绑定, 在电脑每次重起后, 都必须重新在绑定, 虽然也可以做一个批处理文件, 但是还是比较麻烦的!

3.2 使用ARP防护软件

目前关于A R P类的防护软件出的比较多了, 大家使用比较常用的A R P工具主要是360ARP防火墙, Antiarp等。它们除了本身来检测出A R P攻击外, 防护的工作原理是一定频率向网络广播正确的A R P信息。通过在系统内核层拦截A R P攻击数据包, 确保网关正确的M A C地址不被篡改, 可以保障数据流向正确, 不经过第三者, 从而保证通讯数据安全、保证网络畅通、保证通讯数据不受第三者控制, 完美的解决局域网内A R P攻击问题。

3.3 具有A R P防护功能的路由器

这类路由器以前听说的很少, 对于这类路由器中提到的A R P防护功能, 其实它的原理就是定期的发送自己正确的A R P信息。但是路由器的这种功能对于真正意义上的攻击, 是不能解决的。

A R P的最常见的特征就是掉线, 一般情况下不需要处理一定时间内可以回复正常上网, 因为A R P欺骗是有老化时间的, 过了老化时间就会自动的回复正常。现在大多数路由器都会在很短时间内不停广播自己的正确A R P信息, 使受骗的主机回复正常。但是如果出现攻击性A R P欺骗 (其实就是时间很短的量很大的欺骗A R P, 1秒有个几百上千的) , 它是不断的发起A R P欺骗包来阻止内网机器上网, 即使路由器不断广播正确的包也会被他大量的错误信息给淹没。

可能你会有疑问:我们也可以发送比欺骗者更多更快正确的A R P信息啊?如果攻击者每秒发送1000个ARP欺骗包, 那我们就每秒发送1 5 0 0个正确的A R P信息!

面对上面的疑问, 我们仔细想想, 如果网络拓扑很大, 网络中接了很多网络设备和主机, 大量的设备都去处理这些广播信息, 那网络使用起来好不爽, 再说了会影响到我们工作和学习。A R P广播会造成网络资源的浪费和占用。如果该网络出了问题, 我们抓包分析, 数据包中也会出现很多这类A R P广播包, 对分析也会造成一定的影响。

4 结语

A R P协议的安全漏洞来源于协议自身设计上的不足。A R P协议被设计成一种可信任协议, 缺乏合法性验证手段而且A R P病毒在短时间内不易被查觉。然而各防范措施都有其局限性, 不能非常好地解决问题, 所以给网络用户数据保密带来了一定的安全隐患, 最好的解决办法当然是修改ARP的协议算法和机制, 把Ipv4中ARP协议的无状态性。无需认证性调整为请求后才应答, 同时验证I P/MAC的有效性和可靠性, 在Ipv6设计了邻机发现协议 (NDP1, 把ARP纳入NDP并运行于Intemet控制报文协议 (I C M P) , 使A R P更具有一般性, 包括更多的内容。基本解决了A R P的问题。

参考文献

[1]刘涛, 陈宝国.ARP漏洞分析及防范, 现代计算机[J].2008 (6) :137~138.

[2]黄迎久, 徐扬.基于以太网的ARP欺骗原理与防范措施[J].中国西部科技, 2008, 10:34~35.

ARP欺骗的防御策略 第2篇

1.1 什么是ARP协议

ARP (Address Resolution Protocol)是地址解析协议的简称,是一种将IP地址转化为物理地址的协议。在网络中,实际传输的是“数据帧”,数据帧如果要到达目的地,就必须知道对方的MAC地址,它不认识IP的。但这个目标MAC地址是如何获得的呢?它就是通过ARP协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址

与MAC地址是一一对应的,如表1所示。

1.2 ARP协议工作原理

ARP数据包根据接收对象不同,可分为两种:

1)广播包:广播包目的MAC地址为FF-FF-FF-FF-FF-FF,交换机设备接收到广播包后,会把它转发给局域网内的所有主机。

2)非广播包:非广播包后只有指定的主机才能接收到。

ARP数据包根据功能不同,也可以分为两种:

1) ARP请求包:用于获取局域网内某IP对应的MAC地址。

2) ARP回复包:告知别的主机,本机的IP地址和MAC是什么。

广播的一般都是ARP请求包,非广播的一般都是ARP回复包。

假设局域网内有以下两台主机,主机名、IP地址、MAC地址分别如下:

当主机A需要与主机B进行通讯时,它会先查一下本机的ARP缓存中,有没有主机B的MAC地址。如果有就可以直接通讯。如果没有,主机A就需要通过ARP协议来获取主机B的MAC地址,具体做法相当于主机A向局域网内所有主机问:“谁是192.168.0.2?我是192.168.0.1,我的MAC地址是AA-AA-AA-AA-AA-AA。你的MAC地址是什么,快告诉我”,这时候主机A发的数据包类型为:广播-请求。

当主机B接收到来自主机A的“ARP广播-请求”数据包后,它会先把主机A的IP地址和MAC地址对应关系保存/更新到本机的ARP缓存表中,然后它会给主机A发送一个“ARP非广播-回复”数据包,其作用相当于告诉主机A:“我是192.168.0.2,我的MAC地址是BB-BB-BB-BB-BB-BB”。当主机A接收到主机B的回复后,它会把主机B的IP地址和MAC地址对应关系保存/更新到本机的ARP缓存表中,之后主机A和B就可以进行通讯了。

从上述局域网主机通讯过程可以看出,主机在两种情况下会保存、更新本机的ARP缓存表,第一种:接收到”ARP广播-请求”包时;第二种:接收到”ARP非广播-回复”包时。

从中可以看出,ARP协议是没有身份验证机制的,局域网内任何主机都可以随意伪造ARP数据包,ARP协议设计天生就存在严重缺陷。

2 ARP欺骗的类型和危害

由于ARP协议天生存在的严重缺陷,给了不少非法用户可乘之机,以至于今天ARP欺骗现象泛滥于网络。网络时断时通、内网通讯正常,网关不通、频繁提示IP冲突,都可能是ARP欺骗的症状,以下对几种基于ARP的网络欺骗进行简单的介绍:

2.1 简单的欺骗攻击

这种欺骗方式是指:欺骗主机通过发送伪造的ARP包来欺骗网关和目标主机,让目标主机认为这是一个合法的主机。其中包括两种情况:

1)局域网主机冒充主机进行欺骗

欺骗过程如图1所示:假设PC01与PC02是信任关系,PC02欲向PC01发送数据包。攻击方PC03通过前期准备,可以发现PC01的漏洞,使PC01暂时无法工作,然后PC03发送包含自己MAC地址的ARP应答给PC02。由于大多数的操作系统在接收到ARP应答后会及时更新ARP缓存,而不考虑是否发出过真实的ARP请求,所以PC02接收到应答后,就更新它的ARP缓存,建立新的IP和MAC地址映射对,即PC01的IP地址192.168.0.1对应了PC03的MAC地址03-03-03-03-03-03。这样,导致PC02就将发往PC01的数据包发向了PC03,但PC01和PC02却对此全然不知,因此PC03就实现对PC01和PC02的监听,能够轻而易举地窃取PC01与PC02之间的通信报文。

2)局域网主机冒充网关进行欺骗

在正常情况下,主机PC02与GW之间的数据流向,以及它们各自的ARP缓存表如图2所示。

但当出现一不怀好意主机PC03时,情况就发生改变。欺骗过程如图3所示:当PC02要与网关GW通讯时,首先要知道GW的MAC地址,如果局域网中另有一台主机PC03冒充GW告诉PC02:GW的MAC地址是MAC 03,那么PC02就更新了自己的ARP缓存,建立新的IP和MAC地址映射对,即GW的IP地址192.168.0.1对应了PC03的MAC地址03-03-03-03-03-03。这就如同我们邮寄信件时写错了地址,导致信件发错了地方,或者是根本就发送不出去。这样一来就会造成PC02断线的后果。网关欺骗的主要目的不是窃取报文,而是扰乱局域网中合法PC的ARP缓存表,使得网络中的合法PC无法正常上网,造成通信中断。

2.2“中间人攻击”

MITM (Man-In-The-Middle)称为“中间人攻击”,是一种“间接”的入侵攻击方式。这种攻击是利用一定手段在两台或多台主机之间人为的加入一台透明主机,(这对其他用户是透明的)这台主机就称为“中间人”。“中间人”能够与原始主机建立连接、截获并篡改它们的通信数据。由于“中间人”对于原通信双方是透明的,使得“中间人”很难被发现,也就使得这种攻击更加具有隐蔽性。而其中“中间人”常用的一种手段就是通过ARP欺骗的方式来实现的。基本欺骗过程如图4所示。

假设有同一网段内的三台主机PC01, PC02, PC03。主机PC01, PC02为合法主机,PC03为“中间人”攻击者。如果主机PC03分别向主机PC01和PC02发送假消息,即:告诉主机PC01,主机PC03的MAC地址是MAC PC02,同时告诉主机PC02,主机PC03的MAC地址是MAC PC01。这样主机PC03就成功地成为了PC01与PC02的“中间人”。那么PC01, PC02间正常的直接通信也会随之中断。取而代之的是PC01, PC02间每次进行信息交互时都要经过主机PC03。这样,主机PC03就可以有办法监听PC01与PC02之间的通信,达到监听的目的了。如果PC03不转发PC01与PC02之间的通信,就会造成主机PC01与PC02之间的网络连接中断。

2.3 MAC洪泛

MAC Flooding可以称之为MAC洪泛现象。其中flooding是一种快速散布网络连接设备(如交换机)更新信息到整个大型网络打每一个节点的一种方法。交换机中也存放着一个ARP缓存表。但是交换机中的ARP缓存表的大小是固定的,这就导致了ARP欺骗的另一种隐患:由于交换机可以主动学习客户端的MAC地址,并建立和维护这个ARP缓存表,当某人利用欺骗攻击连续大量的制造欺骗MAC地址,ARP缓存表就会被迅速填满,同时更新信息以洪泛方式发送到所有的接口,也就代表TRUNKING的流量也会发给所有的接口和邻近的交换机,会导致其他交换机的ARP表溢出,造成交换机负载过大,网络缓慢和丢包甚至瘫痪。MAC Flooding是一种比较危险的攻击,严重会使整个网络不能正常通信。

2.4 基于ARP的DoS攻击

DoS (Denial of Service) 中文为,拒绝服务攻击。DoS攻击的目的就是让被攻击主机拒绝用户的服务访问,破坏系统的正常运行。最终使用户的部分Internet连接和网络系统失效。基于ARP的DoS攻击的基本原理是:攻击者利用ARP欺骗工具,不断向被攻击主机发送大量的连接请求,由于遭到ARP欺骗的主机不能够根据ARP缓存表找到对方主机,加之主机的处理能力有限,使得它不能为正常用户提供服务,便出现拒绝服务。

以上几种欺骗方式中,第一种最为常见,攻击者通常利用ARP木马病毒进行攻击。但是从本质上看,所有的欺骗方式都是一样的,都是利用ARP缓存表的老化机制使得ARP欺骗有机可乘。

3 常见防御ARP欺骗的方法及缺陷

网络中基于ARP的欺骗带来的危害日益升级,越来越多的网络深受其害,在网络安全界也涌现出了多种ARP欺骗的防御方案,这里简单加以总结。

3.1 主机静态绑定

最常用的方法就是做IP和MAC静态绑定,在网内把主机和网关都做IP和MAC绑定。

局限性:对于网络中有很多主机,500台,1000台...,如果每一台都去做静态绑定,工作量是非常大的,这种静态绑定,在电脑每次重启后,都必须重新在绑定,虽然也可以做一个批处理文件,但是还是比较麻烦的!

3.2 主机安装ARP防御软件

目前这类软件很多,其基本原理与上一个方法相同,就是每个主机都不停的发送免费ARP广播来告诉别人自己的IP和MAC的绑定关系,以达到抑制欺骗ARP报文的目的。

局限性:这种方法是通过耗费大量网络带宽来实现的,所以在许多主机安装了ARP防火墙的网络中,网络性能往往都会非常低下,因为大量的带宽都被免费ARP报文占用了。

3.3 接入交换机/网关手动绑定

目前主流的安全接入交换机/网关都具有IP、MAC绑定功能,可以通过在接入交换机上将下联每台主机的IP和MAC地址绑定起来,将不符合IP、Mac绑定信息的报文全部丢弃,这样能较有效地防御内网用户冒充网关或其他主机来欺骗内网其他用户的目的。

局限性:配置工作量大,每台交换机下所连的所有用户都要一一手动绑定,对于交换机下联客户机变换频繁的场合,基本无可用性;无法防御来自外部的ARP欺骗,只对本交换机所接用户负责。

接入交换机/网关手动绑定的方法,是现在采用的比较多的手段,但由于其以上的局限性,所以要配合其他手段才能完善的防御ARP欺骗。

4 局域网基于ARP欺骗全面防御方案

从上文中介绍的目前常见的几种防范ARP欺骗的解决方案可以看到,每个方案各有利弊,都无法完善方便的防御ARP欺骗。因此只有通过多种手段的结合,配合完善的内网管理机制,才能实现对ARP欺骗的全面防御。思路如图5所示。

4.1 网关防御

目前主流的安全接入交换机/网关都具有IP、MAC绑定功能,我们需要在网关上对客户机/终端设备建立静态ARP表。

例如在cisco路由器上进行IP-MAC地址绑定:

#conf t(进入全局配置模式)

#arp 219.239.144.134 abcd abcd abcd arpa(将这儿的IP和MAC换成在局域网收集的信息)

#end

#copy run start

在网关进行上进行IP-MAC地址绑定的目的如图6所示。

4.2 接入设备防御

下面以华为交换机为例,演示接入设备防御局域网ARP欺骗的方案。

1)阻止仿冒网关IP的ARP攻击

拓扑图如图7所示。

图8中S3552P是三层设备,其中IP:100.1.1.1是所有PC的网关,S3552P上的网关MAC地址为000f-e200-3999。PC-B上装有ARP攻击软件。现在需要对S3026_A进行一些特殊配置,目的是过滤掉仿冒网关IP的ARP报文。

配置步骤:

对于二层交换机如S3026C等支持用户自定义ACL (number为5000到5999)的交换机,可以配置ACL来进行ARP报文过滤。

全局配置ACL禁止所有源IP是网关的ARP报文:

aclnum5000

rule0deny0806ffff2464010101ffffffff40

其中rule0把整个S3026C_A的端口冒充网关的ARP报文禁掉,其中斜体部分64010101是网关IP地址100.1.1.1的16进制表示形式。Rule1允许通过网关发送的ARP报文,斜体部分为网关的mac地址000f-e200-3999。

注意:配置Rule时的配置顺序,上述配置为先下发后生效的情况。

在S3026C-A系统视图下发acl规则:

这样只有S3026C_A上连网关设备才能够发送网关的ARP报文,其它主机都不能发送假冒网关的arp响应报文。

2)阻止仿冒他人IP的ARP攻击

作为网关的设备有可能会出现ARP错误表项,因此在网关设备上还需对仿冒他人IP的ARP攻击报文进行过滤。

拓扑图所示,当PC-B发送源IP地址为PC-D的arp reply攻击报文,源mac是PC-B的mac (000d-88f8-09fa) ,源ip是PC-D的ip (100.1.1.3) ,目的ip和mac是网关(3552P)的,这样3552上就会学习错误的arp,如下所示:

从网络连接可以知道PC-D的arp表项应该学习到端口E0/8上,而不应该学习到E0/2端口上。但实际上交换机上学习到该ARP表项在E0/2。通过如下配置方法可以防止这类ARP的攻击。

1)在S3552上配置静态ARP,可以防止该现象:

2)同理在S3526C上也可以配置静态ARP来防止设备学习到错误的ARP表项。

3)对于二层设备,除了可以配置静态ARP外,还可以配置IP+MAC+port绑定,比如在S3026C端口E0/4上做如下操作:

则IP为100.1.1.4并且MAC为000d-88f8-09fa的ARP报文可以通过E0/4端口,仿冒其它设备的ARP报文则无法通过,从而不会出现错误ARP表项。

4.3 客户端防御

在客户端,可以做两个批处理文件,一个是绑定网关IP地址与网关的MAC地址,另一个是绑定自己的IP地址与MAC地址。

1)绑定网关IP地址与网关MAC地址:

步骤:

以上方案,从网关、交换设备及客户端三方面入手进行防御,解决了ARP欺骗中的网关型欺骗,中间人欺骗以及ARP泛洪攻击,在可能发生ARP请求和响应的所有环节,都加以防范,有效弥补了由于ARP协议本身的缺陷所带来的漏洞,基本解决了困扰广大网络管理员的ARP欺骗问题。

5 结束语

ARP协议自身的缺陷虽然给网络安全,尤其是局域网络的安全带来很大的隐患,所以我们要引起高度重视。但是只要掌握了它的基本原理,就可以从多方面下手,杜绝隐患。普通的一种方法也许不能够完全杜绝这种网络传输中所带来的隐患,只有在客户端、各个网关和交换设备上同时建立起有效的防御机制,才能保证网络安全。

摘要:文章介绍了ARP地址解析协议的含义和工作原理, 分析了ARP协议存在的安全漏洞和ARP欺骗的种类及危害, 同时小结了防范ARP欺骗的一般策略及其局限性。作者结合自己的实际工作经验, 制定出一种将各种策略有机结合, 全面防范局域网中ARP欺骗的方案, 该方案主要包括网关防御, 接入设备防御, 客户端防御等方面, 并经过实验验证了该文提出的全面安全防御策略的有效性。

关键词:ARP欺骗,ARP协议,MAC地址,IP地址,网络安全

参考文献

[1]马军, 王岩.ARP协议攻击及其解决方案[J].信息安全, 2006, 22 (5-3) :70-77.

[2]王群.非常网管.网络安全[M].北京:人民邮电出版社, 2007.

ARP欺骗攻击的取证和防御方法 第3篇

ARP欺骗是攻击者发送伪造的ARP请求或ARP应答信号发起的攻击行为。当收到一个ARP应答的时候,所有的客户端无论是否发出过ARP请求,都可能会更新本地ARP缓存表。并且ARP协议中,对ARP应答信号的信号源缺少可靠的认证机制,所以无论收到的ARP请求/应答信号是真实的还是伪造的,都会进行处理,这就给网络中的数据传输安全留下了隐患。

1 ARP欺骗攻击类型

1.1 中间人攻击(MITM)

中间人攻击就是攻击者在目标主机与另一方主机(网关或服务器)进行正常通信的过程中,进行拦截、插入、伪造、中断数据包,达到截获对方敏感数据,伪造身份等目的[1]。

1.2 拒绝服务攻击(Do S)

拒绝服务攻击以阻塞正常网络带宽、耗尽服务器内存资源、干扰及破坏正常通信为主。在传统的网络中,Do S攻击已成为攻击者进行恶意破坏大型网站通信、破坏公司网络等极具威胁性的途径[2]。

1.3 MAC泛洪

交换机依靠对CAM表的查询来确定正确的转发接口。攻击者通过伪造大量的ARP应答报文,使CAM表被这些伪造的MA C地址占据,真实的MAC地址却无法进入CAM表,当CAM表记录的MAC地址达到上限后,新的条目将不会添加到CAM表中。此时,任何一个经过交换机的正常单播数据帧,都会以广播帧的形式被处理,导致网络带宽资源被大量的数据包占用。

2 ARP欺骗的检测和取证方法

2.1 检查ARP缓存

受到ARP欺骗攻击的主机ARP缓存表,会保存错误的IP和MAC地址绑定关系,通过对比ARP缓存和可信IP和MAC地址绑定关系,可以分析ARP欺骗攻击类型和攻击源。

2.2 检测ARP数据包

攻击者发起ARP欺骗攻击需要向网络中发送伪造的ARP报文,这些伪造的ARP报文中会重复使用合法的IP地址。如果存在ARP欺骗攻击,ARP报文中IP地址和MAC地址就会出现多对对应关系。并且,ARP应答数据包的包头结构中,含有源MA C地址和目的MAC地址等信息,通过分析伪ARP数据包,可以定位出ARP欺骗攻击的主机。

2.3 网络流量分析

在受到ARP欺骗攻击的网络中,攻击者需要持续发送伪AR P数据包,相比于正常的网络,受攻击的网络中ARP数据包会增多,将导致整个网络中的单播、多播、广播数据包比例发生明显变化。

3 受攻击网络取证分析

3.1 检查ARP缓存表

本地ARP缓存表包含了本地的所有IP地址和MAC地址的对应关系。如果ARP缓存受到中毒攻击,就会出现伪造的IP和MAC地址对应关系。表1所示是受攻击主机的ARP缓存表,缓存表中出现了重复的MAC地址:00-0c-29-f2-3d-a5同时对应着192.168.0.1和192.168.0.117两个IP地址,而网关的的MAC地址实际是be-53-e5-a4-6f-20,IP为192.168.0.117的主机就是ARP欺骗攻击的攻击源,目标是伪装成网关。

3.2 分析ARP数据包

使用wireshark捕获到的受攻击内网流量中的ARP数据包监测显示结果为:Duplicate IP address detected for 192.168.0.117(00:0c:29:f2:3d:a5)–also in use by be:53:e5:a4:6f:20。说明IP地址192.168.0.117被重复使用,说明IP为192.168.0.117的主机发出伪造的ARP包,并且这些伪ARP包中的IP地地址,B很可能发起了Do S攻击或是中间人攻击。

3.3 网络流量分析

通过Ntop分析网络流量可以确定网络上存在的各种问题,判断是否存在ARP攻击行为。表2和表3分别是在正常网络和受攻击网络情况下,主机用Ntop得出的网络流量统计信息。在受到ARP欺骗攻击时,广播流量明显增大到18.0%。广播包很可能就是实施ARP欺骗持续发出的伪ARP包。

3.4 入侵检测

除上述几种措施外,还有很多ARP欺骗检测工具,如XArp、ARPToxin、snort等[3]都可以对基于ARP欺骗的攻击行为进行实时检测。其中,Snort是一个开源的,具有实时流量分析、网络IP数据包记录等强大功能的网络入侵/防御检测系统。这种方法首先要根据具体网络手动配置文件,对网络的变化适应性差。

4 防御措施

4.1 IP地址与MAC地址静态绑定

通常,局域网内IP地址和MAC地址的对应关系是动态的,这是ARP欺骗攻击的前提。如果静态绑定受信任的IP地址和M AC地址,当收到已绑定地址的ARP请求/应答信号后,ARP缓存表就不会进行更新。

4.2 DHCP防护和DAI检测

通过交换机的DHCP ack包或者手工指定,建立和维护一张包含受信任的IP和MAC地址生成的DHCP Snooping绑定表,交换机开启DHCP Snooping后,会检查非信任端口报文中的M AC地址,根据绑定表过滤掉不受信任的DHCP信息,与数据库中的借口信息不匹配的DHCP信息同样也会被丢弃。避免非法冒充DHCP服务器接入。

5 结论

为了保障网络安全,关于OSI各层的安全策略已经做了大量研究。通过数据链路层一直面临着严重的安全威胁。利用ARP协议无状态的特性发起的ARP欺骗攻击危害极大。通过实验室环境验证检查ARP缓存表、ARP包监测、网络流量分析,可以及时发现并定位ARP欺骗攻击行为。最后给出IP地址静态绑定、DHCP防护和DAI检测等安全防护措施,对保护局域网安全具有重要意义。

参考文献

[1]马军,王岩.ARP协议攻击及其解决方案[J].微计算机信息,2006.

[2]李军锋.基于计算机网络安全防ARP攻击的研究[J].武汉工业学院学报,2009.

ARP欺骗防御解决方案 第4篇

1 ARP协议

我们知道, ARP协议是“Address Resolution Protocol” (地址解析协议) 的缩写, 它的作用, 就是将IP地址转换为MAC地址。在局域网中, 网络中实际传输的是“数据帧”, 数据帧如果要到达目的地, 就必须知道对方的MAC地址, 这个协议不认IP地址。但这个目标MAC地址是如何获得的呢?它就是通过ARP协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址, 查询目标设备的MAC地址, 以保证通信的顺利进行。

每台安装有TCP/IP协议的电脑里都有一个ARP缓存表, 表里的IP地址与MAC地址是一一对应的, 例如下表所示。

我们以主机A (192.168.16.1) 向主机B (192.168.16.2) 发送数据为例。当发送数据时, 主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了, 也就知道了目标MAC地址, 直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址, 主机A就会在网络上发送一个广播, 目标MAC地址是“FF.FF.FF.FF.FF.FF”, 这表示向同一网段内的所有主机发出这样的询问:“192.168.16.2的MAC地址是什么?”网络上其他主机并不响应ARP询问, 只有主机B接收到这个帧时, 才向主机A做出这样的回应:“192.168.16.2的MAC地址是bb-bb-bb-bb-bb-bb”。这样, 主机A就知道了主机B的MAC地址, 它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表, 下次再向主机B发送信息时, 直接从ARP缓存表里查找就可以了。

ARP缓存表采用了老化机制, 在一段时间内如果表中的某一行没有使用, 就会被删除, 这样可以大大减少ARP缓存表的长度, 加快查询速度。

以上就是ARP协议的作用以及其工作过程, 看来是很简单的, 也正因为其简单的原理, 没有其他措施的保障, 也就使得ARP欺骗产生了。下面我们来看看ARP欺骗到底是怎么回事。

2 ARP欺骗原理

为什么会有ARP欺骗, 这还要从ARP协议说起。前面我们介绍了, 当源主机不知道目标主机的MAC地址的话, 就会发起广播询问所有主机, 然后目标主机回复它, 告知其正确的MAC地址, 漏洞就在这里。如果一个有不轨图谋的主机想收到源主机发来的信息 (可能是用户名、密码、银行账号之类的信息) , 那么它只需也向源主机回复一下, 响应的IP地址没错, 但MAC地址却变成了发起欺骗的主机的, 这样, 信息就发到它那里去了 (前面说了, 数据帧只认MAC地址) 。这是一种欺骗的方式, 还有一种方式, 是利用了“免费ARP”的机制。所谓免费ARP就是不需要别人问, 一上来就先告诉别人, 我的IP地址是多少, 我的MAC地址是多少, 别的主机无需广播, 就已经知道了该主机的IP和MAC, 下次需要发到这个IP的时候, 直接发就行了。既然是主动发起的, 就可以被别有用心的人利用了, 用一个假冒的IP地址 (可能是网关的或者重要服务器的地址) 加上自己的MAC出去骗别人, 就把重要的信息都骗到这里来了。下面我们来看看ARP欺骗的具体操作过程。

2.1 局域网主机冒充网关进行ARP欺骗。

欺骗过程:如下图所示, Pc A跟网关GW C通讯时, 要知道GW的MAC地址, 如果PC B假冒GW告诉PC A, GW的MAC地址是MAC B;或者干脆告诉PC A, GW的MAC地址是MAC X, 那么, PC A就受骗了, pc A的数据就到不了网关, 造成断线。

2.2 局域网主机冒充其他主机欺骗网关

欺骗过程:网络通讯是一个双向的过程, 也就是说, 只有保证PC A->Gw C以及Gw C->PC A都没问题, 才能确保正常通讯。假如, PC B冒充主机PC A, 告诉GW C:PC A的MAC是MAC B, 网关就受骗了, 那么, PC A到GW C没有问题, 可是, GW C到不了PC A, 因而造成网络断线。

以上两种欺骗, 尤其是第二种类型的欺骗, 现在更为常见。从本质上说, 同一局域网内 (这里指在同一网段) 的任何两个点的通讯都可能被欺骗, 无论是主机到网关, 网关到主机, 主机到服务器, 服务器到主机, 还有主机之间都是一样, 都可能产生进行ARP欺骗, 欺骗本质都是一样。

2.3 其他欺骗类型。

主机冒用其它主机, 欺骗其它主机的方式:如主机A冒用主机B的MAC, 欺骗主机C, 以达到监听主机B和主机C的目的.并且导致主机B到主机C之间的网络连接中断。

外网欺骗:外网冒用路由器A的MAC, 欺骗更上一级的路由器B, 导致更上一级的路由器被骗, 将内网信息全部转发给外网恶意主机。

3 防御ARP欺骗的解决方案

面对ARP欺骗带来的危害日益升级, 越来越多的网络深受其害, 在网络安全界也涌现出了多种ARP欺骗的防御方案, 我在这里简单加以总结。

3.1 接入交换机/网关手动绑定。

目前主流的安全接入交换机/网关都具有IP、MAC绑定功能, 有的厂家的安全接入交换机甚至提供了6元素 (IP、MAC、VLAN ID、交换机端口号、用户名、密码) 的绑定, 可以通过在接入交换机上将下联每台主机的IP和MAC地址绑定起来, 将不符合IP、MAC绑定信息的报文全部丢弃, 这样有效的防住了内网用户冒充网关或其他主机来欺骗内网其他用户的目的。

这种方法的局限性:配置工作量大, 每台交换机下所连的所有用户都要一一手动绑定, 对于交换机下联客户机变换频繁的场合, 基本无可用性;无法防御来自外部的ARP欺骗, 只对本交换机所接用户负责;无法适用于采用动态IP的场合。

接入交换机/网关手动绑定的方法, 是现在采用的比较多的手段, 但由于其以上的局限性, 所以要配合其他手段才能完善的防御ARP欺骗。

3.2 主机端手动绑定。

通过Windows自带的ARP-S命令, 可以将特定的IP地址和MAC地址进行绑定, 实现一定的ARP欺骗防御。

这种方法的局限性:配置麻烦, 主机需要通信的目标很多, 不可能一个一个都绑起来;容易失效, 这种方法进行的绑定, 一拔掉网线或者关机、注销就全部失效了, 如果想继续使用, 就需要重新绑定;只能进行主机端的防御, 如果网关遭欺骗则无能为力。

跟接入交换机绑定一样, 主机端手动绑定也是只能实现部分防御, 需要与其他方法结合来完善。

3.3 网关定期发送免费ARP。

这是一种抑制的方法, 因为ARP表项有老化期, 经过一段时间就需要重新更新, 所以通过网关定期发送免费ARP, 不时的“提醒”主机, 真正的网关在这里, 来防止伪装成网关的ARP欺骗。

这种方法的局限性:网关定期发送免费ARP, 对于网关设备的性能提出了很高的要求, 同时, 大量的免费ARP报文无疑也大大占用了网络的带宽;由于很多ARP欺骗也是通过频繁大量发送免费ARP报文来实现的, 所以如果网关这么做, 欺骗只需要将发送的频率加大几倍就依然可以欺骗成功。

3.4 主机安装ARP防御软件。

目前这类软件很多, 其基本原理与上一个方法相同, 就是每个主机都不停的发送免费ARP广播, 来告诉别人自己的IP和MAC的绑定关系, 以达到抑制欺骗ARP报文的目的。

这种方法的局限性:同上一个方法一样, 这种方法也是通过耗费大量网络带宽来实现的, 所以在许多主机安装了ARP防火墙的网络中, 网络性能往往都会非常低下, 因为大量的带宽都被免费ARP报文占用了。

以上就是目前常见的几种防范ARP欺骗的解决方案, 我们可以看到, 每个方案各有利弊, 都无法完善方便的防住ARP欺骗。只有通过多种手段的结合, 配合完善的内网管理机制, 才能实现ARP欺骗的真正防御。

4 三重立体ARP防御解决方案

ARP欺骗攻击存在的原因, 究其根本在于ARP协议本身的不完善, 通信双方的交互流程缺乏一个授信机制, 使得非法的攻击者能够介入到正常的ARP交互中进行欺骗。要从根本上解决ARP欺骗的问题, 必须要在局域网内的通信双方之间建立起一个可信任的验证体系。

目前在业界最完善的“ARP三重立体防御体系”, 正是为了应对现在日益严重的ARP欺骗现象而制定的, 整个解决方案遵循以下思路进行:

4.1 方案原理。

(1) 用户身份合法性验证。通过部署这种解决方案, 实行基于IEEE 802.1X协议的身份认证系统, 所有用户都必须要经过统一集中的身份鉴权认证方能允许接入网络。统一的身份认证系统确保了所有网络中的在线用户都有合法的身份信息, 并且利用802.1X协议基于MAC地址的逻辑端口认证特性, 保障了认证系统的中央服务端能够在用户认证过程中获取到用户真实的IP-MAC对应信息。 (2) 确保真实ARP信息来源。防治ARP欺骗的最重要一个环节是确保ARP信息的真实可靠。对于局域网通信最主要的两个对象:网关和用户来说, 网关的IP-MAC对应关系是不会轻易变更的;而通过在全网实施的入网身份认证系统, 能够确保在用户每次上线时的认证过程中都能提交真实的IP-MAC信息。网络中各元素的真实ARP信息有了可靠的来源保障。 (3) 中立的第三方ARP授信体系。前文已经谈到, 要从根本上防治ARP欺骗, 必须在通信双方之间建立可靠的验证体系。而由于ARP协议本身的缺陷性, 不管是通信双方的网关或是主机都无法胜任对ARP信息的可靠性进行验证的角色, 需要通过中立的第三方系统把控ARP协议的通信过程。“ARP三重立体防御体系”能够对在线用户的身份信息进行统一的管理, 非常适合进行ARP信息的授权管理。 (4) 建立可信任ARP (Trusted ARP) 机制。可信任ARP机制用于在局域网通信的双方之间进行可靠的ARP信息同步, 具体到各个不同的网络元素之间的同步过程, 可以分为以下两种操作:

主机ARP静态绑定:在客户端主机进行网关的ARP静态绑定。当用户认证上线时, 认证服务端在本地保存的网关IP-MAC对应关系表中查找用户所属网关, 并将该用户所对应的网关IP和MAC地址进行下发, 由802.1X认证客户端程序在用户的主机端进行网关MAC和IP的ARP静态绑定。

客户端在认证成功后进行ARP静态绑定, 然后定时进行ARP静态绑定是否被更改的检测, 如果被更改, 则重新进行绑定, 以防止一些木马程序以合法的方式对ARP静态绑定进行的更改, 用户下线时删除主机的网关ARP静态绑定。

网关可信任ARP绑定:当用户认证上线时, 认证服务端通过接入交换机获取用户真实的IP-MAC关联信息, 并根据用户的网关信息, 将用户相应的ARP表项在网关进行主机的IP和MAC的ARP静态绑定.该方式同主机ARP静态绑定相结合, 能够达到双绑定的效果。

(5) 在网关设备上增加可信ARP表项。在智能三层接入/汇聚交换机上必须能够支持可信任ARP表项功能。可信任ARP作为一类特殊ARP, 添加在交换机端的ARP表中。可信任ARP同时具有静态ARP和动态ARP两者的特征, 其优先级高于动态ARP表项、并且低于静态ARP表项。可信任ARP具有类似于动态ARP的老化机制——通过记录和刷新每个表项的老化时间来判断该表项是否需要老化。可信任ARP具有静态ARP的相关特征, 即不被动态ARP所覆盖。

可信任ARP归类为动态ARP, 因此对于ARP的相关功能模块, 该可信任ARP将被视为动态ARP。使用这种方式可避免可信任ARP对原有ARP相关模块的影响。同时, 由于静态ARP优先级高于可信任ARP, 因此用户手动配置的静态ARP可以覆盖可信任ARP。

因此, 在实施了可信任ARP功能之后, 对于网络管理员来说, 所有操作完全都是透明的, 不会对网络管理员的原有网络管理产生任何影响, 因为对于原有的网络来说, 可信任ARP就是动态ARP。只有在ARP更新这个地方有了轻微了变化, 而且所有的一切动作都是后台进行的。

4.2 方案实现过程及效果

(1) 第一重, 网关防御。网关防御的实现过程如下:安全管理平台学习已通过认证的合法用户的IP-MAC对应关系;安全管理平台将用户的ARP信息通知相应网关;网关生成对应用户的可信任ARP表项。

网关防御过程如下:攻击者冒充用户IP对网关进行欺骗;真正的用户已经在网关的可信任ARP表项中, 欺骗行为失败。

(2) 第二重, 客户端防御。用户端防御的实现方法如下:在安全管理平台上设置网关的正确IP-MAC对应信息;用户认证通过, 安全管理平台将网关的ARP信息下传至客户端;客户端静态绑定网关的ARP。

用户端防御的实现过程如下:攻击者冒充网关欺骗合法用户;用户已经静态绑定网关地址, 欺骗攻击无效。

(3) 第三重, 交换机非法报文过滤。交换机非法报文过滤, 是通过安全智能交换机的安全功能来实现的, 具体实现方法如下:用户认证通过后, 交换机会在接入端口上绑定用户的IP-MAC对应信息;交换机对报文的源地址进行检查, 对非法的攻击报文一律丢弃处理;该操作不占用交换机CPU资源, 直接由端口芯片处理。

交换机非法报文过滤实现过程如下:攻击者伪造源IP和MAC地址发起攻击;报文不符合绑定规则, 被交换机丢弃。

参考文献

[1]谢希仁.计算机网络[M].北京:电子工业出版社, 2008, 1.

[2][美]多伊尔, [美]卡罗尔著, 葛建立, 吴剑章译.TCP/IP路由技术[M].北京:人民邮电出版社, 2007, 1.

构筑立体式ARP欺骗攻击防御体系 第5篇

自2006年以来,基于ARP协议的欺骗攻击愈演愈烈,A R P病毒在各大校园网内泛滥成灾,严重威胁了用户的信息安全,轻则网络变慢、时断时续,重则直接无法上网、重要信息被窃取,为此研究有效的防范A R P欺骗攻击的措施已成为确保网络畅通的必要条件。

2 ARP欺骗攻击

2.1 ARP协议缺陷

ARP(Address Resolution Protocol,地址解析协议)位于OSI参考模型中的数据链路层,负责将网络层IP地址解析为数据链路层的MAC地址。在局域网中,网络中实际传输的是“帧”,帧里面有源和目标主机的M A C地址,帧在网络中就是靠这个M A C地址进行目标识别和传输的。A R P协议通过发送请求广播包,查询目标设备的M A C地址,得到应答后将M A C地址插入帧中。就可以在网络中进行传输了。

A R P协议设计初衷是方便数据的传输,它是建立在局域网主机相互信任基础之上,所以ARP协议具有广播性、无状态性、无认证性、无关性和动态性等一系列的安全缺陷:

(1)A R P协议寻找M A C地址是广播方式的。攻击者可以应答错误的M A C地址.同时攻击者也可以不间断地广播A R P请求包.造成网络的缓慢甚至网络阻塞;

(2)ARP协议是无状态和动态的。任意主机都可以在没有请求的情况下进行应答。且任何主机只要收到网络内正确的A R P应答包。不管它本身是否有A R P请求,都会无条件的动态更新缓存表;

(3)ARP协议是无认证的。ARP协议默认情况下是信任网络内的所有节点,只要是存在ARP缓存表里的IP/M A C映射以及接收到的ARP应答中的IP/M A C映射关系。A R P都认为是可信任的,并没有对IP/M A C映射的真实性、有效性进行检验,也没有维护映射的一致性。

2.2 ARP欺骗攻击的形式

在网络中各种形式的A R P欺骗攻击,给网络带来的危害基本上可以表现为:网络异常、数据窃取、数据篡改、非法控制等,给网络的通信和网络结点的安全带来重大的危害,常见ARP欺骗病毒攻击的典型症状有:

(1)上网时经常会弹出一些广告,有弹出窗口形式的,也有嵌入网页形式的。下载的软件不是原本要下载的,而是其它非法程序;

(2)网关设备ARP表项存在大量虚假信息,上网时断时续;网页打开速度让使用者无法接受;

(3)终端不断弹出“本机的XXX段硬件地址与网络中的XXX段地址冲突”的对话框;

(4)经常会有用户的网上银行、游戏及Q Q账号频繁丢失的现象。

这些问题的出现很大一部分要归因于A R P欺骗攻击,目前校园网内已发现的A R P欺骗攻击系列病毒已经有了几十个变种,这种病毒的程序如PwSteal.Lemir或其他变种,属于木马程序/蠕虫类病毒。据检测数据显示,APR欺骗攻击从未停止过。

3立体式防御ARP欺骗攻击

从分析A R P欺骗的过程得出,如果要消除A R P欺骗就要将局域网中每一个主机的I P地址与MAC地址绑定在一起,这样就不会出现欺骗问题了。

结合我校校园网A R P防范经验,依托锐捷网络的GSN全局安全网络中的强大数据源和联动能力,通过三层网关设备、安全智能交换机、R G-S U用户接入认证的联动,在我们校园网实现了对ARP欺骗的三道防线立体防御。图1为GSN功能组件结构。

第一道防线:网关防御,其实现过程如下:

首先R G-S M P(安全管理平台)学习已通过认证的合法用户的IP-MAC对应关系,R G-S M P(安全管理平台)将用户的ARP信息通知相应网关,网关生成对应用户的可信任A R P表项(图2)。

第二道防线:客户端防御,其实现方法如下:

在R G-S M P(安全管理平台)上设置网关的正确I P-MAC对应信息,用户认证通过,R G-S M P(安全管理平台)将网关的A R P信息下传至R G-S U用户接入认证端,SU静态绑定网关的ARP。若攻击者冒充网关欺骗合法用户,用户已经静态绑定网关地址,欺骗攻击无效(图3)。

第三道防线:交换机防御

用户认证通过后,交换机会在接入端口上绑定用户的I P-MAC对应信息,交换机对报文的源地址进行检查,对非法的攻击报文一律丢弃处理,该操作不占用交换机C P U资源,直接由端口芯片处理。若攻击者伪造源I P和MAC地址发起攻击,则因报文不符合绑定规则,被交换机丢弃(图4)。

针对主机、接入交换机、三层网关等不同ARP攻击的问题,锐捷GSN三道防线立体防御提供了A R P欺骗最彻底的解决方案。对各种A R P欺骗攻击软件和病毒木马能够进行有效的防御,确保网络通信的可靠,无需大量广播免费ARP报文,不会对网络造成额外负荷,只需要简单的配置,便可实现全网A R P攻击的立体防御

4结语

本文探讨了由于A R P协议缺乏合法性验证手段的缺陷漏洞导致欺骗攻击的实现过程,分析了A R P欺骗的原理和防御思想,最终形成了业界最为有效的“A R P三道立体防御体系”解决方案。该防御体系有效弥补了由于A R P协议本身的缺陷所带来的漏洞,解决了困扰广大网络管理员的A R P欺骗问题,给我校校园网乃至所有的园区网带来更加健康和谐的网络环境。

摘要:针对目前校园网及网吧频繁发作的ARP欺骗病毒攻击,从ARP协议的缺陷方面分析了欺骗攻击的形式和ARP欺骗的类型,提出了立体式防御ARP欺骗攻击的解决方案。

关键词:ARP协议,ARP欺骗,防御,攻击,立体式

参考文献

[1]宋新见,殷冬梅,惠俊英.基于矢量信号处理的水声定位系统[J].海洋工程,2001,21.110-114.

[2]宋新见,惠俊英,殷冬梅,李艳梅.水下噪声目标被动测距技术研究[J].应用声学,2004,24.133-139.

[3]张颖颖,杜立彬,侯广利,张颖.基于矢量信号处理的水下目标定位和跟踪设计[A].计算机仿真,2008,1.310-313.

[4]孙仲康,周一宇,何黎星.单多基地有源无源定位技术[M].北京:国防工业出版社,1996:37-7.

ARP欺骗的防御策略 第6篇

关键词:ARP,拥塞,地址映射,地址解析协议

1、引言

随着科技的进步, 网络也逐渐成为了人们在工作、生活中不可缺少的一部分, 高校的网络得到了较快的发展, 近几年来, 随着校园网络规模急剧膨胀、网络用户数量快速增长, 给ARP病毒的传播带来一个绝佳的机会, ARP病毒在高校网络当中迅速蔓延。

A R P病毒发作的迹象就是间断性的断网, 网络性能严重不足、网速变慢, 其原因是本来流向主干网络的大量的信息却流向了病毒主机, 而且这些大量的数据包可能使得本网段拥塞, 所以使得网速变得很慢或者直接断网。

2、ARP介绍

ARP[1,2] (Address Resolution Protocol, 地址解析协议) , 用于IP地址到MAC地址的映射, 这一对映射是很有必要的, 原因是在网络层及其以上的层次在传输信息时, 必然要使用到IP地址, 然而物理层却并不识别IP地址, 更不会为其服务传输这些信息, 所以必须先进行地址解析, 然后才能通过物理层传输数据, 所以说ARP协议对网络通信来说是很重要的。

ARP地址解析的具体步骤如下:

假定在一个局域网内, 主机A欲向主机B发起通信 (前提是已知主机B的IP地址) , 首先到自己的ARP缓存表中查询是否存在 (IPB, MACB) 这一对映射, 如果不存在, 便向网络当中广播一个ARP请求数据包, 内容是:“我的IP地址为:IPA, 物理地址是:MACA, IP地址是:IPB的主机, 请答复你的MAC地址是多少?”, 只有IP地址是IPB的主机把自己的MACB地址写进ARP回复报文进行ARP应答。

在局域网当中为了尽量减少A R P请求广播, 每一个主机都有一个ARP缓存表, 并根据接受到的ARP应答报文动态的更改自己的ARP缓存表。此ARP协议的缺陷就在于没有一个有效检测机制, 不管ARP应答报文中的 (IP, MAC) 映射是否合法, 都会对自己的ARP缓存表就行更新, 所以一些不法分子可以通过伪造IP和MAC的映射来制造ARP欺骗攻击, 轻则造成被攻击的主机经常断网, 重则是截取被攻击主机的重要信息, 使得受害者蒙受巨大损失。

3、ARP欺骗[3]

一般来说, ARP欺骗是在篡改ARP缓存表的基础上实施的, ARP病毒有2种攻击形式, 即主动攻击形式和被动攻击形式。

3.1 主动攻击形式

所谓的主动攻击形式就是攻击主机主动的发送A R P应答报文, 恶意更改害主机ARP缓存中的IP和MAC映射。

3.1.1 中间人攻击

在某一局域网当中存在以下几台主机 (IP/MAC) , 如下图所示:

A:192.168.1.1 AA—AA—AA—AA—AA—AA

B:192.168.1.2 BB—BB—BB—BB—BB—BB (网关地址)

C:192.168.1.3 CC—CC—CC—CC—CC—CC

D:192.168.1.4 DD—DD—DD—DD—DD—DD

在正常情况下, A可以利用自己A R P缓存表中的信息或者使用A R P协议是可以跟D正常通信的, 此时C向A发送A R P数据包, 其内容是 (192.168.1.4, CC—CC—CC—CC—CC—CC) , A收到此数据包时, 会修改自己的A R P缓存表, 把D的物理地址修改为:C C—C C—C C—C C—C C—C C, 此时当A再向D发送数据时, 数据包首先发送到C, , 即C截取到了A数据包。

3.1.2 仿冒网关欺骗

所谓的仿冒网关欺骗就是A R P病毒向网络的中主机发送含有错误网关 (IP, MAC) 映射对的ARP数据包, 受害主机接受到此ARP数据包并更新了自己的ARP缓存表, 当受害主机发送数据时, 这些本来流向网关的数据却被重定向到另一台主机上或一个错误的MAC地址上, 导致受害主机无法访问网关。如图2所示:

在主机A向本网段中发送了一个A R P数据包, 内容是 (192.168.1.2, FF-FF-FF-FF-FF-FF) , 在本网段中的主机C接受到此ARP数据包, 根据其内容更新自己的ARP缓存表, 即错误的更改了网关的 (IP, MAC) 映射, 此时主机C在一段时间内是无法访问到网关的。

3.1.3 ARP洪泛攻击

ARP洪泛攻击就是感染ARP病毒的主机, 在一段时间内持续的向网络中发送ARP数据包, 远远的超过了本网段中主机的ARP缓存表容量, 即主机ARP缓存表当中都是错误的 (IP, MAC) 映射, 并且无法学习到合法的映射, 此时, 主机无法正常获取网络服务。

3.2 被动攻击形式

所谓的被动攻击形式就是攻击主机并不主动的去修改受害主机的ARP缓存表, 而是当受害主机发送ARP协议询问包时, 再进行应答, 实施欺骗攻击。

由此, 可以看出ARP协议默认所有的ARP数据包都是可信的。

4、解决方法

4.1配置静态记录

因为在校园网络中, 常见的ARP攻击方式就是仿冒网关, 所以我们首先要获悉正确网关的 (IP, MAC) , 然后在命令提示符下运行arp—d, 清空主机的ARP缓存表, 然后再使用命令arp—s配置静态的ARP记录, 这样可以有效的阻止ARP攻击, 但是这样会破坏ARP动态解析的过程, 需要管理人员实时的去修改ARP记录, 不宜维护。

4.2 在交换机上启动DHCP Snooping和DAI服务

DHCP Snooping主要作用就是屏蔽掉非法的DHCP服务器, 使用户获取到正确的网络地址, 并且建立、维护一张动态的DHCP-Snooping表, 这张表格是用DHCP ack数据包中的IP/MAC映射对生成的, 还可以手动的添加记录, 此表格是D A I技术的基础, DAI技术原理就是截取网络当中的ARP数据包, 验证此数据包当中的MAC/IP映射是否合法 (与DHCP-Snooping表进行比较) , 验证成功就转发, 否则丢弃此数据包。

4.3 划分Vlan

划分Vlan的好处就是减少广播在网络中传播, 将广播隔离在一个小的网段当中, 所以即使本网段中有主机感染了ARP病毒, 那么该病毒波及的范围也不会太大, 不至于蔓延到整个网络。

校园网络可以根据实际情况进行划分Vlan, 并且把每一个Vlan端口与ARP防火墙相连, 这样可以防止ARP病毒跨网段传播。

5、结语

本文对ARP攻击以及防御方法进行了简单的介绍, 进一步讲解ARP攻击方式及其原理, 但是由于ARP协议在设计上的缺陷, 仅仅光靠技术的手段来防御ARP攻击是不行, 还应该有健全的管理规范和防患意识, 才能使得校园网络安全、稳定的运转。

参考文献

[1]周明天, 汪文勇.TCP/IP网络原理与技术[M].北京:清华大学出版社, 1999.

[2]何欣, 王晓凤.ARP协议及其安全隐患[J]河南大学学报。2004.2:90-92.

[3]杨廷朋校园网络ARP协议欺骗的检测与防御[J]鞍山科技大学学报。2007.4:164-167.

[4]赵均, 陈克非.ARP协议安全漏洞分析及其防御方法[J].信息安全与通信保密, 2006 (8) :73~74, 77.

ARP欺骗的防御策略 第7篇

关键词:网络安全,ARP协议,ARP欺骗,安全防范

0 引言

ARP欺骗是一种利用计算机病毒使计算机网络无法正常运行的计算机攻击手段。2007年6月初, 国家计算机病毒应急处理中心预报一种新型“地址解析协议欺骗” (简称ARP欺骗) 的恶意木马程序正在互联网络中传播。从此, ARP欺骗逐渐在校园网、小区网、企业网以及网吧等局域网中蔓延, 严重影响了正常网络通讯。

1 ARP及其工作原理

1.1 ARP概述

在局域网中, 网络中实际传输的是“帧”, 帧里面是有目标主机的MAC地址的。在以太网中, 一个主机要和另一个主机进行直接通信, 必须要知道目标主机的MAC地址。这个目标MAC地址就是通过地址解析协议获得的。ARP协议的基本功能就是通过目标设备的IP地址, 查询目标设备的MAC地址, 以保证通信的顺利进行。

1.2 ARP工作原理

首先, 每台主机都会在自己的ARP缓冲区中建立一个ARP列表, 以表示IP地址和MAC地址的对应关系。当源主机需要将一个数据包要发送到目的主机时, 会首先检查自己ARP列表中是否存在该IP地址对应的MAC地址。如果有, 就直接将数据包发送到这个MAC地址;如果没有, 就向本地网段发起一个ARP请求的广播包, 查询此目的主机对应的MAC地址。网络中所有的主机收到这个ARP请求后, 会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同, 该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中, 如果ARP表中已经存在该IP的信息, 则将其覆盖, 然后给源主机发送一个ARP响应数据包, 告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP响应数据包后, 将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中, 并利用此信息开始数据的传输。如果源主机一直没有收到ARP响应数据包, 表示ARP查询失败。

2 ARP欺骗的原理

第一步:假设这样一个网络, 一个Hub或交换机连接了3台机器, 依次是计算机A、B、C。

第二步:正常情况下在A计算机上运行ARP-A查询ARP缓存表应该出现如下信息。

第三步:在计算机B上运行ARP欺骗程序, 来发送ARP欺骗包。

B向A发送一个自己伪造的ARP应答, 而这个应答中的数据为发送方IP地址是192.168.1.3 (C的IP地址) , MAC地址是DD-DD-DD-DD-DD-DD (C的MAC地址本来应该是CC-CC-CC-CC-CC-CC, 这里被伪造了) 。当A接收到B伪造的ARP应答, 就会更新本地的ARP缓存 (A可不知道被伪造了) 。而且A不知道其实是从B发送过来的, A这里只有192.168.1.3 (C的IP地址) 和无效的DD-DD-DD-DD-DD-DD mac地址。

第四步:欺骗完毕我们在A计算机上运行ARP-A来查询ARP缓存信息。你会发现原来正确的信息现在已经出现了错误。

3 ARP欺骗的模拟

下面使用科来网络分析系统进行模拟。

1) 首先使用科来物理地址扫描主机IP与MAC地址;

2) 使用科来网络分析系统捕获一个ARP的响应数据包;

这里最简单的办法就是用ping命令去ping一台主机, 在科来网络分析系统系统中设置过滤器仅捕获ARP协议;

3) 把捕获到的ARP响应发送到数据包构造器并进行修改;

4) 发送该数据包。

发送前用ARP-A命令在受害者主机上看一下正确网关的IP与MAC的对应关系。然后发送数据包。发送后再用ARP-A命令在受害者主机上查看。受害者的网关的IP地址已经被映射到了黑客主机上了, 受害者主机也不能再上网。至此, 整个实验结束。

4 结论

文中通过分析ARP协议的工作原理, 探讨了ARP协议从IP地址到MAC地址解析过程中的安全性, 给出了ARP欺骗的实现过程。ARP协议自身的缺陷给网络安全, 尤其是局域网络的安全带来很大的隐患, 所以我们要高度重视。总之, 对于ARP欺骗的网络攻击, 只要掌握了它的基本原理, 就可以从多方面下手, 杜绝隐患。

参考文献

[1][美]赖利 (Riley, C.) , 等著.ISCO网络核心技术解析[M].江魁, 等译.北京:水利水电出版社, 2005.

[2]楮建立, 马雪松.局域网arp欺骗防范技术探讨[J].网络安全技术与应用, 2007.

[3]孟晓明.基于ARP的网络欺骗的检测与防范[J].信息技术, 2005 (5) :41-44.

上一篇:高职医学物理学教材下一篇:两个美国