Arp攻击与防范浅析

时间:2022-08-10 04:18:12

一、什么是ARP?

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

在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的,ARP协议对网络安全具有重要的意义。

二、ARP协议的工作原理

一个ARP包是分为两个部分的,前面一个是物理帧头,后面一个才是ARP帧。

首先,物理帧头,它将存在于任何一个协议数据包的前面,我们称之为DLC Header,因为这个帧头是在数据链路层构造的,并且其主要内容为收发双方的物理地址,以便硬件设备识别。我们可以看到需要我们填充的同样也只是MAC,IP,再加上一个1或2的操作码而已。

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

三、出现ARP攻击的原因及特征

一个正常运行的局域网是不应该出现ARP攻击的,经过长时间的观测,发现ARP攻击的出现主要是由以下几个原因造成的:

(一)人为破坏

主要是内网有人安装了P2P监控软件,如P2P终结者,网络执法官,聚生网管,QQ第六感等,恶意监控其他机器,限制流量,或者进行内网DDOS攻击。

(二)木马病毒

传奇、跑跑卡丁车、劲舞团等游戏外挂,如:及时雨PK版,跑跑牛车,劲舞小生等,他内含一些木马程序,也会引起ARP欺骗。最麻烦的就是使用带木马的游戏外挂和浏览带有恶意代码的网页。

四、常用的防范方法

下面介绍防范ARP攻击的几种常用方法:

(一)静态绑定

将IP和MAC静态绑定,在网内把主机和网关都做IP和MAC绑定。

欺骗是通过ARP的动态实时的规则欺骗内网机器,所以我们把ARP全部设置为静态可以解决对内网PC的欺骗,同时在网关也要进行IP和MAC的静态绑定,这样双向绑定才比较保险。缺点是每台电脑需绑定,且重启后仍需绑定,工作量较大,虽说绑定可以通过批处理文件来实现,但也比较麻烦。

(二)使用防护软件

目前关于ARP类的防护软件出的比较多了,双河社区常用的软件是Arpguard和金山防火墙。

ARP防火墙采用系统内核层拦截技术和主动防御技术,包含六大功能模块可解决大部分欺骗、ARP攻击带来的问题,从而保证通讯安全(保障通讯数据不被网管软件/恶意软件监听和控制)、保证网络畅通。

(三)禁止ARP动态更新

为了防止网关被随意攻击,我们还需要在网关机器上关闭ARP动态刷新功能,这样的话,即使非法用户使用ARP欺骗攻击网关的话,对网关是无效的,从而确保主机安全。

(四)具有ARP防护功能的网络设备

由于ARP形式的攻击而引发的网络问题是网络管理,可以通过对具有ARP防护功能的网络设备进行配置,从而充分利用网络设备的功能,实现保护作用。

(五)网关监测

在网关上面使用TCPDUMP程序截取每个ARP程序包,弄一个脚本分析软件分析这些ARP协议。ARP欺骗攻击的包一般有以下两个特点,满足之一就可以视为攻击包报警,第一是以太网数据包头的源地址、目标地址和ARP数据包的协议地址不匹配。第二是ARP数据包的发送和目标地址不在自己网络网卡MAC数据库内,或者与自己网络MAC数据库MAC/IP不匹配。我们也可以通过脚本分析软件实现自动报警功能,最后查这些数据包(以太网数据包)的源地址就大致知道那台机器在发起攻击了。

上一篇:农村乡镇广场文化在城镇化建设中的意义及作用 下一篇:移动增强现实应用综述