论局域网中ARP攻击及防范措施
2016-03-22黄学毛
黄学毛
摘要:ARP攻击是计算机网络面临的重要威胁之一,如何防御ARP攻击已经成为了计算机网络领域中一个热点问题。该文首先分析了ARP的工作原理,然后研究了ARP攻击的原理和危害,最后提出了防御ARP攻击的措施和手段。
关键词:局域网;ARP攻击;防范措施
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)02-0031-02
1 概述
ARP攻击是局域网中极为常见的网络攻击手段。ARP攻击之所以会出现,是因为互联网协议IPV4存在一些不完善之处,IPV4并没有考虑到ARP协议的不安全问题,因此,也造成了很多ARP攻击的出现。虽然后续的IPV6协议已经得到完善,但是目前IPV4仍然是主流,并没有完全过渡到IPV6协议,因此,对于ARP攻击的防御仍然具有十分重要的作用。
而随着网络技术的发展,ARP攻击的手段和方式层出不穷,其破坏性也越来越大,如何防御ARP攻击,降低攻击带来了危害,已经成为网络安全领域的重要问题。
2 ARP工作原理
ARP协议就是地址解析协议,其英文全称是Address Resolution Protocol,ARP协议的主要功能是根据IP地址来获取物理地址。在局域网中,主机之间通信时,传送数据的网卡等硬件设备只能识别对方的物理地址,但是主机在通信时只会知道目标主机的IP地址,因此,需要通过目标主机的IP地址解析出目标主机的物理地址,这就要使用到地址解析协议。
ARP的具体工作原理如下:
在局域网内,当主机A(IP地址是192.168.1.10,物理地址是50-E5-49-B9-41-D4)需要与主机B(IP地址是192.168.1.20,物理地址是40-C4-29-E3-16-F5)通信时,其工作步骤如下所示。
1)主机A会检查本机的路由表内容,确定主机B的IP地址,然后会检查本机的ARP缓存表,查看缓存表中是否有主机B的IP地址与物理地址的映射,如果有映射,则直接与主机B通信。
2)如果主机A没有找到主机B的IP地址与物理地址的映射,那么会在局域网中广播一个ARP请求帧,这个请求帧包含主机B的IP地址以及主机A的IP地址和物理地址。局域网中的其他所有主机都会接收到主机A发出来的ARP请求,收到之后则会立刻检查是否与本机的IP地址匹配,如果不匹配则会丢弃ARP请求。
3)当主机B确定ARP请求中的IP地址与自身IP地址相同时,则会把ARP请求中主机A的IP地址和物理地址存入自身的ARP缓存表中。
4)主机B会对主机A发出的ARP请求进行应答,应答信息中包含有自身的物理地址。
5)当主机A收到主机B的ARP回复信息之后,就会把主机B的IP地址与物理地址的映射存到本机ARP缓存表中。这样,主机A就可以和主机B进行通信了。
3 ARP攻击
3.1 ARP攻击原理
1)ARP欺骗
由于ARP协议的设计存在漏洞,因此,很多攻击者会利用ARP协议的漏洞来发动ARP攻击,其中,ARP欺骗是最为常见的ARP攻击方式。ARP协议并不是只有发送了ARP请求之后才会接收ARP应答,因此,很多攻击者会直接向局域网内主机发送ARP应答,让受害主机更新其ARP缓存表,这就是ARP欺骗。
ARP欺骗的具体原理是这样的,假设局域网中有三台主机,分别是主机A(IP地址是192.168.1.10,物理地址是50-E5-49-B9-41-D4)、主机B(IP地址是192.168.1.20,物理地址是40-C4-29-E3-16-F5)和主机C(IP地址是192.168.1.30,物理地址是20-D4-21-F2-56-00),假设主机C是攻击者,其可以向主机A发送一个ARP应答,欺骗主机A自己的IP地址是192.168.1.20,物理地址是20-D4-21-F2-56-00,主机A在接收到ARP应答之后就会更新自己的ARP缓存表,把主机C伪造的IP地址和物理地址的映射记录到ARP缓存表中。主机C会用同样的方式发送ARP应答给主机B,欺骗主机B自己的IP地址是192.168.1.10,物理地址是20-D4-21-F2-56-00。这样主机A和主机B之间的所有通信数据都会经过主机C,主机C可以窃取主机A和主机B的通信信息。这就是典型的ARP欺骗。
ARP欺骗最常用的方式并不是通过伪造局域网内部主机的IP地址和物理地址映射的手段,而是伪造网关。攻击者根据上述原理来伪造局域网网关,局域网内所有主机都要通过网关来访问Internet网络,这样,攻击者就可以获取局域网内主机与外部网络通信的数据了。
2)ARP请求风暴
ARP请求风暴就是在局域网内不断广播ARP请求/应答,攻击者对局域网内所有主机进行扫描,不断广播ARP请求/应答,这样就会占用大量的网络带宽,导致网络拥堵,使得网速下降。
3.2ARP攻击的危害
ARP攻击是网络攻击的主要方式之一,攻击者采用的攻击策略的不同也会导致不同的影响。如果攻击者是对通信的双方都发起了ARP欺骗,那么双方的通信数据都会经过攻击者这个中转站,通信数据会被攻击者窃取,导致双方通信数据的泄露。
如果攻击者只是欺骗一方的主机,那么只会导致受欺骗主机与攻击者的通信。如果攻击者伪造的是网关,那么局域网中所有主机要访问外网只会与攻击者通信,而不会连入外部网络,这就导致局域网内主机处于断线状态。
如果攻击者发动了ARP请求风暴,则会导致网络带宽资源被占用,导致网络的延时或断线。
4 防范措施
4.1基本防范措施
为了预防和应对ARP攻击,有一些基本的防范措施,这些防范措施操作简单,也不需要有很强的计算机操作能力,但是这些措施能够暂时的消除故障,不能永久性的消除隐患,具体来说有以下几种:
1)重启计算机。因为计算机每一次重新启动都会把原有ARP缓存表清空,而ARP攻击都是伪造IP地址和物理地址的映射关系,重启计算机相当于把伪造的IP地址和物理地址的映射关系都删除了,这样就可以暂时阻止ARP攻击。
2)对路由器等网络设备复位。对网络设备复位的原理与重启计算机是一样的,把网络设备恢复到出厂设置,可以暂时阻止ARP攻击。
3)禁用网卡。为了防止外来人员利用ARP进入局域网中盗窃IP地址,可以采用禁用网卡的方式,这样就切断了外来人员进入局域网的可能性,ARP攻击也无法获取目标IP地址,从而失去了威胁。
4)安装杀毒软件。目前,绝大部分的杀毒软件都会有防止ARP攻击的功能,杀毒软件会对网络中的通信量进行检查,同时也会诊断访问信息,这样就可以有效判断是否会存在ARP攻击,如果出现ARP攻击,杀毒软件会采取相应的措施进行防御。
这些方法是防御ARP攻击的基本措施,对于计算机技术较为薄弱的用户来说,可以采用以上方式来初步防御ARP攻击。
4.2 IP地址和物理地址的静态绑定
ARP欺骗攻击是伪造IP地址与物理地址的映射关系来欺骗目标主机,为了防御ARP欺骗攻击,可以采用IP地址和物理地址静态绑定的方式,固定IP地址与物理地址的映射关系。静态绑定IP地址和物理地址的方法就是在命令提示符界面输入“ARP –s 目标IP地址 目标物理地址”。
由于ARP攻击者一般都是选择伪造局域网网关的IP地址与物理地址的映射关系,因此,以局域网网关IP地址和物理地址的静态绑定为例,介绍一下静态绑定的方法。
假设局域网中网关的IP地址是192.168.1.6,物理地址是00-16-78-cb-80-b4。要在局域网内主机上静态绑定网关的IP地址和物理地址,其具体操作方法如下:
1)点击“开始”按钮,在搜索框中输入“cmd”。
2)在弹出的命令提示符界面中输入“arp -d”,这样就清除了ARP缓存记录表中的信息,如下图1所示。
完成之后可以输入“arp -a”来查看ARP缓存表中没有任何的信息。
3)输入“arp –s 192.168.1.6 00-16-78-cb-80-b4”,就可以完成网关IP地址和物理地址的绑定,如下图2所示。
完成上述步骤之后就正式完成了局域网网关IP地址和物理地址的绑定,可以通过输入“arp -a”来查看绑定情况,如下图3所示。
从图3中可以看出,主机上已经实现了网关IP地址和物理地址的静态绑定,这样即使ARP缓存表刷新也不会删除这一对应关系。当电脑重新启动时,网关IP地址和物理地址的静态绑定就会消失,为了防止这种情况,可以把上述步骤编辑成一个批处理文件,并且把这个批处理文件设置成“启动”项,这样,当电脑每次开机时都会完成网关IP地址和物理地址的静态绑定。
4.3 ARP防火墙
ARP防火墙的目的就是为了防御ARP攻击,其主要有两个功能,第一是保证计算机能够准确获取网关的物理地址,第二是保证网关能够准确获取计算机的物理地址。ARP防火墙不但能够保护局域网不受到外来的ARP攻击,也能够阻止局域网内部ARP攻击威胁外部。
参考文献:
[1] 史隽彬,秦科. ARP攻击现状分析及一种应对ARP攻击的方法[J].陕西理工学院学报:自然科学版,2013,29 (2):48-52.
[2] 王镇洪,王育琳,蓝景立,等.校园网内ARP攻击分析和防御解决方法[J].福建电脑,2013,29(10):45-47
[3] 郭会茹,杨斌,牛立全. ARP攻击原理分析及其安全防范措施[J].网络安全技术与应用,2015,15(6):5-6.