ARP欺骗原理与防范

关键词: 欺骗

ARP欺骗原理与防范(精选九篇)

ARP欺骗原理与防范 篇1

(一)ARP概述

ARP,全称为Address Resolution Protocol,即地址解析协议。该协议是数据链路层协议,其主要功能是将网络层IP地址转变成数据链路层的MAC地址,起到IP地址到MAC地址的映射作用。

接入以太网中的每台主机,都会在自己的ARP高速缓存中建立一个IP地址到MAC地址的映射列表,我们称之为ARP缓存表。当源主机向目的主机发送数据包时,首先在自己的ARP缓存表中查询,如果表中存有目的主机IP地址对应的MAC地址,那么源主机就将数据包向该MAC地址对应的主机进行发送。如果ARP缓存表中没有目的主机IP地址对应的MAC地址,那么源主机就进行ARP广播请求,以获取目的主机的IP地址和对应的MAC地址。本地网段中的主机接收到ARP广播请求后,就会查询自己的ARP缓存表,如果表中存有对应的IP地址和MAC地址,就对源主机作出应答,向源主机发送ARP响应数据包。源主机在接收到ARP响应数据包后,就会更新自己的ARP缓存表。同时,也就获得了目的主机的IP地址及其对应的MAC地址,便可以向目的主机发送数据包了。如果源主机广播ARP请求包后,一直没有收到ARP响应数据包,则ARP查询失败。

(二)ARP欺骗原理

1. ARP漏洞分析

ARP协议本身存在弱点,或者说该协议不完善,存在一些缺陷和漏洞。具体的情况如下:(1) ARP协议没有连接的概念,ARP数据包的发送与接收是不需要连接的。任何活动的主机随时可以向其它主机广播ARP请求数据包,该请求不是建立连接请求,而是发送IP地址与MAC地址的映射查询请求;任何活动的主机在没有ARP请求的时候也可以随时做出应答,向其它主机发送ARP数据包。(2) ARP缓存表是动态更新的。任一主机只要接收到ARP应答数据包,就会查询自己的ARP缓存表,并与ARP应答数据包中的数据进行比较,如果发现应答数据包中有新的IP地址与MAC地址映射项,就立即更新自己ARP缓存表的数据。(3) ARP协议中没有认证机制。任何活动的主机只要接收到有效的ARP数据包,就会立即刷新自己的ARP缓存,更新表中的数据,而不管是哪台主机发送的,也不验证其真实性与合法性。

因此,利用ARP协议的这些漏洞,攻击者可以随时发送虚假的ARP数据包,使得被攻击的主机更新其ARP缓存,实现欺骗的目的。

2. ARP欺骗过程

ARP欺骗的实质是修改主机ARP缓存表中IP地址与MAC地址映射表项。ARP欺骗常采用的方法是向网络中广播伪造的ARP数据包,使得被攻击的主机刷新自己的ARP缓存,将虚假的IP地址与MAC地址映射表项更新到自己的ARP缓存表中,以实现欺骗的目的。

现有主机A, MAC地址为:AA-10-A7-14-30-AA, IP地址为:202.193.98.7;主机B, MAC地址为:BB-24-37-B2-11-BB, IP地址为:202.193.98.8;主机C, MAC地址为:CC-35-21-C3-58-CC, IP地址为:202.193.98.9。源主机A需要和目的主机B通信时,主机A会在自己的ARP缓存表中查找是否有目的主机B的IP地址与MAC地址。如果有,就直接把目的主机B的MAC地址写入帧里进行发送;如果没有,主机A就会在网络上发送一个广播包,用以获取主机B的IP地址与MAC地址。同一网段上的所有主机都会收到这个ARP请求广播包。除主机B外,其他主机收到后检查数据包中的目的IP地址与自己的IP地址不相同,就丢掉此包;而主机B收到后,检查到目的IP地址和自己的IP地址相同,就将主机A的IP地址和MAC地址记录到自己的ARP缓存表中,如果ARP缓存表中已经存在主机A的信息,将其覆盖,然后给主机A发送一个ARP请求的响应数据包。主机A收到主机B的ARP响应数据包后,将主机B的IP地址和MAC地址记录到自己的ARP缓存表中。

ARP协议并不只在发送了ARP请求才接收ARP应答。当主机接收到任何ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP地址和MAC地址存储在ARP缓存表中。因此,主机C欺骗主机A时,可以向主机A发送一个伪造的ARP应答。例如:发送方IP地址是202.193.98.8 (主机B的IP地址) ,MAC地址是CC-35-21-C3-58-CC (主机B的真实MAC地址应该是BB-24-37-B2-11-BB) 。当主机A接收到主机C伪造的ARP应答时,就会更新本地的ARP缓存。那么主机B的真实IP地址与MAC地址映射项就会被伪造的所替换。当主机A再向主机B进行通信时,实际是将信息发送给了主机C。而主机A向主机B的通信就被主机C欺骗了,除非主机A重新获取主机B真实的IP地址与MAC地址映射。

(三)ARP欺骗防范

根据ARP欺骗的原理,可采取以下措施对ARP欺骗进行防范,以提高网络的稳定性和安全性。

1. 提高网络安全意识,加强防范措施。

如:安装杀毒软件,及时更新病毒库,经常对机器进行病毒扫描;安装并使用网络防火墙;及时安装系统补丁,更新操作系统;关闭一些不需要的服务等。

2. 使用专门的防ARP欺骗和攻击的软件。

如ARP专用防火墙;ARP木马病毒专杀软件。

3. 使用ARP命令或ARP防火墙将网关IP与MAC地址进行静态绑定,并采取一些安全策略。

如:拒收无请求的ARP应答数据包;只接收来自网关的ARP数据包;实时主动保持和网关的连接;手动添加可信任的主机IP和对应的MAC地址等。

4. 使用具有防范ARP欺骗功能的网络交换机,通过在交换机端进行配置而实现防范。

(四)结束语

在实际应用中,单一采用上述某种防范方法,必然存在一定的局限性,而多种方法综合运用,才能更为有效的防范ARP欺骗,但仍不能彻底防范所有的ARP攻击。这是因为ARP协议自身的漏洞而造成的。随着网络的发展,新的网络协议和技术的应用,可望解决该问题。

参考文献

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

[2]LauraA.Chappell/EdTittel.TCP/IP协议原理与应用[M].马海军, 等译.北京:清华大学出版社, 2005.

ARP欺骗原理与防护技术研究 篇2

地址解析协议;ARP欺骗;MAC地址

1.ARP协议简介

ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。它是通过地址解析协议(AddressResolution Protoco,l ARP)获得的。ARP协议是一个网络层子协议,它用于将网络中的IP地址解析为硬件地址(MAC地址),以保证通信的顺利进行。

2.ARP协议的工作原理

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

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

ARP协议安全缺陷。在TCP/IP协议的网络环境下,ARP工作时,送出一个含有所希望的IP地址的以太网广播数据报。一个IP数据报走到哪里,要怎么走主要是靠路由表定义。但是,当IP数据包到达该网络后,哪台机器响应这个IP包却是靠该IP包中所包含的硬件MAC地址来识别。也就是说,只有机器的硬件MAC地址和该IP包中的硬MAC地址相同的机器才会应答这个IP包,所以,在每台主机的内存中,都有一个ARP→硬件MAC地址的转换表。通常是动态的转换表(该ARP表可以手工添加静态条目)。

ARP欺骗原理。典型的ARP欺骗过程如下:

假设局域网分别有IP地址为192.168.1.1、192.168.1.2和192.168.1.3的A、B、C三台主机,假如A和C之间正在进行通讯,此时B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.1.3(C的IP地址),MAC地址是BB-BB-BB-BB-BB-BB,当A接收到B伪造的ARP应答,就会更新本地的ARP缓存,这时B就伪装成C了。同时,B同样向C发送一个ARP应答,应答包中为发送方IP地址192.168.1.1(A的IP地址),MAC地址BB-BB-BB-BB-BB-BB(A的MAC地址本来应该是AA-AA-AA-AA-AA-AA),当C收到B伪造的ARP应答,也会更新本地ARP缓存,这时B又伪装成了A。这时主机A和C都被主机B欺骗,A和C之间通讯的数据都经过了B,主机B完全劫持目标主机与其他主机的会话。

ARP欺骗一般分为两种:主机型ARP欺骗。欺骗过程:A欺骗B,A告诉B,我(A)就是C,当然告诉的是真IP地址和假MAC地址,使B不能与C连接。若C是网关,B就不能上外网Internet了。

网关型ARP欺骗。欺骗过程:B充当中间人角色向两个方向发送ARP欺骗包,使A的上网数据包经过B再到C,又使C的返回数据经过B再到A,卡在中间,以达到窃取数据的目的。B发送ARP欺骗包给A,B告诉A,我(B)就是网关;同时,B又发送ARP欺骗包给真正的网关C,告诉真正的网关C,我(B)就是A,这样B就欺骗了双方,接着B通过劫持A和C之间的通信会话,就可以窃听数据了。

从影响网络连接通畅的方式来看,ARP欺骗分为两种,一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。

3.ARP欺骗防范措施

建立DHCP服务器,另外所有客户机的IP地址及其相关主机信息,只能由网关这里取得,网关这里开通DHCP服务,但是要给每个网卡,绑定固定唯一IP地址。一定要保持网内的机器IP/MAC一一对应的关系。这样客户机虽然是DHCP取地址,但每次开机的IP地址都是一样的或手工清除PC和网关ARP表项,从新学习正确的ARP信息。ARP欺骗发生后的PC和网关设备的ARP表被篡改了,这样我们可以通过手工方式来清除ARP表项,然后让双方重新学习。

主机:arp–d

网关:clear arp。

建立MAC数据库,把局域网内所有网卡的MAC地址记录下来,每个MAC和IP、地理位置统统装入数据库,以便及时查询备案,PC机上静态绑定网关MAC地址,防止对主机的欺骗。在主机上可以使用静态的ARP绑定网关的IP地址和网关的MAC地址,比如在PC机上配置autoexec.bat批处理文件:

@echo off

arp–d

arp–s主机ip地址主机mac地址//mac地址格式为xx-xx-

xx-xx-xx-xx。

网关机器关闭ARP动态刷新的过程,使用静态路由,这样的话,即使ARP欺骗攻击网关的话,对网关也是没有用的,因此可以确保主机安全。网关建立静态IP/MAC捆绑的方法是:建立/etc/ethers文件,其中包含正确的IP/MAC对应关系,格式如下:192.168.2.3208:00:4E:B0:24:47然后在/etcrc. d/rc. local最后添加: arp -f生效即可。

网关监听网络安全。网关上面使用抓包程序截取每个ARP程序包,用脚本分析软件分析这些ARP协议。ARP欺骗攻击的包一般有以下两个特点,满足之一可视为攻击包报警:以太网数据包头的源地址、目标地址和ARP数据包的协议地址不匹配,或者ARP数据包的发送和目标地址不在自己网络网卡MAC数据库内,或者与自己网络MAC数据库MAC/IP不匹配。这些统统第一时间报警,查这些数据包(以太网数据包)的源地址(也有可能伪造),就大致知道哪台机器在发起攻击了。

使用支持端口隔离的二层交换机。通过端口隔离特性,可以将不同用户的端口划分到同一个VLAN,不同用户之间不能互通,从而增强了网络的安全性,阻止了ARP病毒源的机器对网络的影响,提供了灵活的组网方案,同时节省了大量的VLAN资源。

安装杀毒软件,及时升级病毒库,定期全网杀毒。

[1]陈 明.网络协议教程[M].北京:清华大学出版社,2004

[2]杨义先等.网络安全理论与技术[M].北京:人民邮电出版社,2003

ARP欺骗原理与防范 篇3

1 ARP协议的工作原理

ARP (Address Resolution Protocol) 即地址解析协议, 该协议将网络层的IP地址转换为数据链路层的MAC地址。TCP/IP协议中规定, IP地址由网络号和主机号构成, 每一台接入局域网或者Internet的主机都要配置一个IP地址。在以太网中, 源主机和目的主机通信时, 源主机不仅要知道目的主机的IP地址, 还要知道目的主机的数据链路层地址, 即网卡的MAC地址。ARP协议所做的工作就是查询目的主机的IP地址所对应的MAC地址, 并实现双方通信。在以太网中传输的数据包是以太包, 而以太包的寻址是依据其首部的MAC地址。仅仅知道某主机的IP地址并不能让内核发送一帧数据给此主机, 内核必须知道目的主机的MAC地址才能发送数据。ARP协议的作用就是在于把IP地址变换成MAC地址。

在局域网内数据包传输依靠的是MAC地址, IP地址与MAC地址对应关系保存在ARP缓存表中, 每台主机 (包括网关) 都有一个ARP缓存表。我们可以在命令行窗口中, 输入命令arp-a, 进行查看, 输入命令arp-d进行删除。

当数据源主机需要将一个数据包要发送到目的主机时, 首先检查自己ARP列表中是否存在该IP地址对应的MAC地址。如果存在, 就直接将数据包发送到这个MAC地址对应的主机;如果不存在, 就向本地网段发起一个ARP请求的广播包, 询问目的主机的IP地址所对应的MAC地址。网络中所有的主机收到这个ARP请求后, 会检查数据包中的目的IP地址是否和自己的IP地址一致。如果不一致就不作回应;如果一致, 该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中。然后再给数据源主机发送一个ARP响应数据包, 告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP响应数据包后, 将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中, 并利用此信息开始数据的传输。若数据源主机一直没有收到ARP响应数据包, 表示ARP查询失败。

2 ARP病毒的欺骗原理和欺骗过程

ARP欺骗的目的就是为了实现交换环境下的数据监听, 大部分的木马或病毒使用ARP欺骗攻击也是为了达到这个目的。

假设由三台电脑组成一个局域网, 该局域网由交换机连接, 其中一个电脑为PC-A, 代表攻击方;另一台电脑为PC-S, 代表源主机;第三台电脑为PC-D, 代表目的主机。这三台主机的IP地址分别为:IP-A, IP-S和IP-D;MAC地址分别为:MAC-A, MAC-S和MAC-D。

现在, 源主机PC-S要给目的主机PC-D发送数据, 则源主机PC-S首先要查询自身的ARP缓存表里面是否有目的主机IP地址对应的MAC地址 (MAC-D) 。如果有, 就将MAC-D封装在数据包的外面, 直接发送出去即可。如果没有, 主机PC-S便向网络发送一个ARP广播包, 广播包中包含了主机PC-S的IP地址IP-S, 硬件地址MAC-S;同时, 要求返回IP地址为IP-D的主机的硬件地址。当主机PC-D接收到该广播, 经核实IP地址, 则将自身的IP地址和物理地址MAC-D返回到主机PC-S。现在主机PC-S可以在要发送的数据包中封装目的地址MAC-D并发送出去, 同时它还会动态更新自身的ARP缓存表, 将MAC-D这一条记录添加进去。这样, 主机PC-S下次再给主机PC-D发送数据的时候, 就不再需要发送ARP广播包进行查询了。这就是正常情况下的数据包发送过程。

但是, 上述数据发送机制有一个致命的缺陷, 即它是建立在对局域网内的全部主机信任的基础上的, 也就是说它的假设前提是:无论局域网中哪台主机, 其发送的ARP数据包都是正确的。比如在上述数据发送中, 当主机PC-S发出广播包后, 主机PC-D也回应了自己的正确MAC地址。但是如果此时主机PC-A却返回了主机PC-D的IP地址和和自己的MAC地址, 并且由于主机PC-A不停地发送这样的应答数据包, 则最后导致主机PC-S又重新动态更新自身的ARP缓存表, 这回记录成:IP-D与MAC-A对应, 我们将其称为ARP缓存表中毒。这样, 就导致以后凡是主机PC-S要发送给主机PC-D的数据, 都将会发送给主机PC-A。也就是说, 主机PC-A就劫持了由主机PC-S发送给主机PC-D的数据。这就是ARP欺骗的过程。

如果主机PC-A不冒充目的主机PC-D, 而是冒充网关, 那后果会更加严重。一个局域网中的主机要连接外网, 都要经过局域网中的网关进行转发。在局域网中, 网关的IP地址假如为192.168.0.254。如果主机PC-A向整个局域网不停地发送IP地址是192.168.0.254, 硬件地址是MAC-A的ARP欺骗广播, 局域网中的其它电脑都会更新自身的ARP缓存表, 将主机PC-A当成网关。这样, 当它们发送数据给网关时, 最终却都会发送到MAC-A这台主机中。这样, 主机PC-A就将会监听整个局域网发送给互联网的数据包。

3 ARP欺骗攻击安全防范方法

3.1 用户端绑定

在用户端计算机上绑定交换机网关的IP地址和MAC地址, 以防止网关地址被篡改。

(1) 要求用户获得交换机网关的IP地址和MAC地址。

用户在DOS提示符下执行arp-a命令, 具体如下:

其中192.168.60.254和00-e0-fc-17-1f-ab分别为网关的IP地址和MAC地址, 因用户所处区域和交换机不同, 其对应网关的IP地址和MAC地址也会不相同。

(2) 编写一个批处理文件, 可以命名为arp.bat, 用来实现将交换机网关的MAC地址和网关的IP地址的绑定, 内容如下:

arp-s后面是按照1) 中所查找到的交换机网关的IP地址和MAC地址。同时需要将这个批处理文件添加到“开始—所有程序—启动”中, 以便用户每次开机后计算机自动加载并执行该批处理文件, 对用户起到一个很好的保护作用。

3.2 网管交换机端绑定

在核心交换机上绑定用户主机的IP地址和网卡的MAC地址。同时, 还可以在接入层交换机上将用户计算机网卡的MAC地址和交换机端口进行绑定。

(1) 在核心交换机上绑定用户主机IP地址和MAC地址。在核心交换机上将局域网用户的IP地址与其网卡MAC地址一一对应进行全部绑定。这样可以最大程度上避免非法用户使用ARP欺骗或盗用合法用户的IP地址。当然, 这会大大增加网络管理员的工作量, 并且要求局域网内用户主机的IP地址不能随意改动。

(2) 在接入层交换机上进行用户主机MAC地址与交换机端口的绑定。将用户计算机网卡的MAC地址和交换机端口绑定可以防止非法用户随意接入网络端口进行上网。非法接入的用户主机因为其网卡的MAC地址与所绑定的不同, 因而该主机的网络访问将因其MAC地址被交换机认定为非法而无法实现上网, 自然也就不会对局域网造成干扰了。具体操作如下 (以CISCO2950交换机为例) :

3.3 采用VLAN技术隔离端口

当管理员发现有非法用户在恶意利用ARP欺骗攻击网络, 或因合法用户受病毒ARP病毒感染而影响网络时, 网络管理员可先查找到该用户所在的交换机端口, 然后将该端口划一个单独的VLAN将该用户与其它用户进行物理隔离, 以避免对其它用户的影响。当然也可以将该交换机端口禁用从而屏蔽该用户对网络造成影响, 从而达到安全防范的目的。

3.4 利用ARP防护软件

伴随ARP欺骗的隐蔽性和广泛性, 目前出现了多种可以防止ARP欺骗的软件, 它们的工作原理一般有两种:第一种是拦截ARP的攻击或者是IP冲突, 保障系统不受ARP攻击的影响;第二种是防止恶意攻击程序篡改本机的ARP缓存表。第一种方法可以通过广播指定IP地址正确的MAC地址, 它能够立即解决ARP攻击引起的挂马、掉线等问题, 但同时也会给网络带来一定的负载。第二种方法较为简单, 不会对网络有什么影响, 但防护效果稍差。

目前比较流行的ARP防护类软件有:Anti ARP防火墙、瑞星个人防火墙、360ARP防火墙等, 它们的工作原理无外乎上述两种。用户可以根据需要选择适合自己网络环境的ARP防火墙。

4 结束语

ARP欺骗是一种典型的欺骗攻击类型, 它利用了ARP协议存在的安全隐患, 并使用一些专门的攻击工具, 使得这种攻击变得普及并有较高的成功率。

本文中通过分析ARP协议的工作原理, 探讨了ARP协议从IP地址到MAC地址解析过程中的安全性, 提出了几种常规可行的解决方案。如在用户计算机上绑定交换机网关的IP地址和MAC地址;在交换机上绑定用户主机的IP地址和网卡的MAC地址、绑定用户计算机网卡的MAC地址和交换机端口;VLAN隔离等技术。

总之, 对于ARP欺骗的网络攻击, 不仅需要用户自身做好防范工作, 而且还需要网络管理员时刻保持高度警惕, 并不断跟踪防范欺骗类攻击的最新技术, 做到防范于未然。

参考文献

[1]秦丰林, 郭汝廷.ARP欺骗的监测与防范技术综述[J].计算机应用研究, 2009, 26 (1) .

简述ARP原理与防范 篇4

摘要:本文通过对ARP协议的工作原理的研究,描述在局域网络中ARP欺骗原理和欺骗的方式、方法,并提出防范ARP网络欺骗攻击的方法。

关键词:ARP协议;ARP欺骗;防范

1引言

在计算机技术高速发展的今天,网络已经成为我们工作生活中不可或缺的部分;然而网络在给我们的工作、生活带来了极大便利的同时,也带来了一系列负面问题。众所周知,计算机一旦与网络互联,几乎都遇到过各式各样的网络攻击,媒体上经常有服务器被黑客入侵或被病毒攻击的报道;网络安全已经受到了日益严重的威胁。

现在局域网中感染ARP病毒的情况日益增多,清理和防范都比较困难,给不少网络管理员造成了很大的困扰。本文在分析当前局域网特点的基础上,旨在找出感染ARP病毒的原因和防范ARP病毒的机制,为局域网的管理提供解决的思路和方法。

2ARP协议工作原理

ARP(Address Resolution Protocol,地址解析协议)是一个位于OSI参考模型中的数据链路层(DL)协议,负责将网络层(OSI的第三层)IP地址解析为数据链路层(OSI的第二层)的MAC地址。

假设:

计算机A的IP为17225.13.1,MAC地址为00-1E-90-33-46-01;

计算机B的IP为172.25.13.2,MAC地址为00-1E-90-33-46-02;

ARP工作原理如下:

在TCP/IP协议中,A给B发送IP包,在包头中需要填写B的IP为目标地址,但这个IP包在以太网上传输的时候,还需要进行一次以太包的封装,在这个以太包中,目标地址就是B的MAC地址。

计算机A是如何得知B的MAC地址的呢?解决问题的关键就在于ARP协议。

在A不知道B的MAC地址的情况下,A就广播一个ARP请求包,请求包中填有B的IP(172.25.13.2),以太网中的所有计算机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,包中就填充上了B的MAC地址,并回复给A。A得到ARP应答后,将B的MAC地址放入本机缓存,便于下次使用。本机MAC缓存是有生存期的,生存期结束后,将再次重复上面的过程。

3ARP欺骗原理

ARP欺骗作为一种典型的欺骗类攻击,包括构造伪造的ARP请求和ARP应答包。攻击主机通过发送伪造的ARP应答来更新目标主机的ARP缓存,从而使自身赢得目标主机的信任。然后再实施有效攻击或非法监听网络数据包,造成目标主机被攻破或机密信息泄漏等一系列灾难性后果。

ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断地发出伪造的ARP响应包,就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。

ARP攻击主要是存在于局域网网络中,局域网中若有一个人感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其他计算机的通信信息,并因此造成网内其他计算机的通信故障。

4防范技术

4.1基于交换机的端口与MAC地址绑定

机柜交换机进行IP-MAC-交换机端口配对绑定,服务器只能在指定交换机端口使用,防止内部ARP攻击机发送虚假IP地址,虚假MAC地址,伪造网关,进行欺骗攻击。

机柜交换机进行网关IP-网关MAC静态绑定,为机柜内部服务器提供静态的网关MaC地址解析。

4.2创建PC机上的绑定脚本文件

以在XP系统上的设置为例,采用双向绑定的方法解决并且防止ARP欺骗。

(1)首先,获得安全网关的内网的MAC地址[例如网关地址172.25.13.254的MAC地址为00-1 E-90-33-46-5A)。

(2)编写一个批处理文件rarp.bat内容如下:

@echo Off

arp-d

arp-S 172.25.13.254 00-1E-90-33-46-5A

将文件中的网关IP地址和MAC地址更改为实际使用的网关IP地址和MAC地址即可。

将这个批处理软件拖到“Windows开始→所有程序→启动”中。

4.3在交换机上做单端口

VLAN设定:由于ARP欺骗攻击一般在同网段危害比较大,我们将网络分段划分得比较细,从而减少危害影响面,达到一定的保护作用。具体做法是,在交换机上有多少个端口就设定多少个VLAN,将端口设定为工作在某个指定的VLAN。这样可在局域网内起到防范ARP欺骗攻击的作用。

4.4软件防控

安装360安全卫士的360arp防火墙,在窗口中选择“网关保护设置→综合设置→自动获取→保存设置”就可完成保护设定。

安装AntiArp软件。运行AntiArp软件后,输入本网段网关的正确IP地址后,单击“获取网关MAC地址”,点击“自动保护”,即可完成保护设定工作。该方法由于安装、设置比较简单,适合普通用户的使用,是目前个人计算机上使用比较多的一种保护方式。

5结束语

试谈ARP欺骗与防范 篇5

学校里无线网络常受到学生ARP欺骗的攻击, 导致有权限连上无线网络的老师的手提电脑无法上网、频繁掉线;在许多出租屋里的多用户网络受到ARP攻击的干扰, 常导致不能上网或网速变慢;另外, 网银、网游等账号密码丢失, 导致损失严重的事件常见于报纸及网上报道。其实一切都与一个二层协议ARP的漏洞有关, 因此研究此ARP相关的攻击技术及原理, 对于企事业单位局域网内安全有着重要的作用及意义。

2 ARP

2.1 概念

ARP称为地址解析协议, 是英文“Address Resolution Protocol”的缩写。在Internet中, 主机与主机之间的通信存在着以下关系:域名-IP-MAC的转换关系。通过DNS服务器可以实现域名与IP的转换, 对于主机在Internet上的寻址有着重要的作用;另外, 通过ARP协议, 可以实现IP与MAC地址的转换, 实现数据包在二层的转发。主机与主机的通信最终是通过MAC来唯一确定通信双方的身份。要实现将逻辑地址 (IP) 转换为MAC地址, 就必须要通过ARP协议来实现。ARP协议其实就是专门负责IP地址与MAC地址之间的转换工作。

2.2 工作原理

主机在网络中存在, 通常会在主机的ARP缓冲区建立对应的ARP TABLE, ARP表里主要是IP地址与MAC地址一一对应的关系, 通过这个表, 主机就可以通过IP地址找到对应的MAC地址, 然后在二层进行数据转发。当然, 刚开始的时候, 主机是没有对应的ARP表的, 连上网络的主机会通过发送ARP广播包来学习到对应的ARP记录。

具体工作原理为:源主机将一个数据包要发送到目的主机, 首先检查本机ARP列表, 看是否存在IP地址对应的MAC地址。如果有, 就直接将数据包发送到这个MAC地址;如果没有, 则在本网段发起一个ARP请求广播包, 查询此目的主机对应的MAC地址。网络中所有的主机侦听到这个ARP请求后, 会检查数据包中的目的IP是否和自己的IP地址一致, 如果不同就忽略此数据包;如果相同, 该主机首先将源主机的MAC地址和IP地址添加到自己的ARP列表中, 如果ARP表已存在该IP的信息, 则将其覆盖;然后给源主机发送一个ARP响应数据包, 告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP响应数据包后, 将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中, 并利用获得的ARP表信息开始数据的传输。

3 ARP欺骗的攻击原理及方法

3.1 ARP欺骗的原理

ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗, 可以在网络中产生大量的ARP通信量使网络阻塞, 攻击者只要持续不断地发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目, 造成假冒及中间人攻击等。用通俗的语言来说, 就是攻击主机不停地发出ARP更新包给攻击主机, 对外不停地宣称其就是这个MAC和IP地址, 被攻击主机不停地侦听到这种数据包, 就会将原本正确的IP地址与MAC地址对应的表项更改为错的对应表项。而被攻击主机在发送数据包时, 封装的MAC地址就是这个错误的MAC地址, 因此将这个包就发送到发起ARP攻击的这台主机那里。

3.2 ARP欺骗的攻击方法

下面通过略举几个典型方法来讲述ARP欺骗的几种攻击方法。

3.2.1 假冒攻击

如上所述的ARP欺骗原理, 我校学生通过ARP欺骗上无线网就是这种假冒攻击。由于无线的接入认证采用的是物理地址认证, 通过将老师手提电脑的MAC地址加入H3C 75系列核心三层交换机进行认证授权。而学生们则通过获取老师手提电脑的MAC, 然后通过ARP欺骗软件, 在软件上实现自己的无线网卡MAC地址和授权的MAC地址一样, 学校的无线在接收到这类源地址被封装为教师MAC地址的数据包时, 就认为此数据包为正常的数据包, 从而就可以通过学校的无线网络连上Internet了, 而被攻击的对象, 老师的那台手提由于此MAC已被占用, 最后导致正常用户 (老师) 不能上网。

假冒攻击还有一种最常用的莫过于是伪造网关, 通过伪造网关, 让局域网中所有的数据包都通过此网关, 如果此网关不能上网, 则会导致整个网络的所有用户都不能上网。而攻击用户则可以独享所有的带宽。实现这方面的攻击软件有很多。

无论怎样实现ARP攻击, 基本上都要不停发送大量的ARP包, 网络上存在大量的ARP欺骗的攻击数据包, 都会导致网络不稳定、拥塞等情况, 对网络的伤害是很大的。

3.2.2 中间人攻击

中间人攻击其实很简单, 假如A主机与B主机通信, 而C主机发动ARP欺骗, 实施中间人攻击。首先C就会伪造自己的身份为B主机, 告诉A主机, 本人就是B主机。然后A主机发给B主机的信息就发给了C主机伪装成的B主机, 但A主机是不知道的, 当C主机得到这个信息后, 再伪装成A主机, 将这个包转发给B主机, A与B之间就多了一个“中间人”C主机, 而A主机与B主机之间却认为通信正常, 与自己通信的就是对方。对于C主机, A主机与B主机之间所有通信的数据包都由它进行转发、接收、过滤, 如果通信内容是一些机密信息, 则一览无遗。银行账号密码等信息等丢失就不是什么不可能的事情了。

4 ARP欺骗攻击的防范

ARP攻击方式和手段多种多样, ARP欺骗攻击的防范方法也不是尽如人意。

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

4.1 预防为主, 提高自身系统安全

操作系统及时升级;安装好杀毒软件及防火墙, 并定期及时升级杀毒软件及防火墙;目前像360、金山这些防病毒厂商开发的防毒软件基本上都具有防范ARP攻击的功能。现在几大厂商开发的防病毒软件都是不错的, 大家可以选用。如金山的防病毒软件, 在检测到ARP攻击包后立即追踪攻击源, 找出安全威胁源头, 有效阻止ARP攻击。

4.2 IP与MAC静态绑定

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

4.3 加强ARP攻击的监测, 及时发现及追踪ARP攻击源头

部署各种监测网络的软件及硬件, 通过相关的软件及硬件检测局域网中每台计算机发出的ARP数据包, 监测网络中的主机是否存在ARP欺骗, 以及哪台计算机正在进行ARP欺骗, 立即追踪攻击源, 找出安全威胁源头, 并给以制止。

4.4 建立MAC数据库

将局域网所有网卡的MAC地址记录下来, 每个MAC和IP、地理位置统统装入数据库, 以便及时查询备案。当一旦发生相关的攻击行为, 通过查找对应的信息进行攻击源的查找与分析。

5 结语

事实上ARP攻击、ARP欺骗的存在, 是来源于ARP协议自身设计上的不足, ARP协议被设计成一种可信任协议, 缺乏合法性验证手段。ARP协议作为IP网络的基础之一, 本身是这个IP网络体系的问题。因此, 上述的各种防范方法必然存在各方面的局限性, 不可能对所有的攻击都起到抑制作用。如果要从根本上解决这一问题, 最好的方法将是重新设计一种安全的地址解析协议。这些问题已经在IPV6中考虑到了, 采用了更安全的方式杜绝了来自底层的攻击。而是在现在的IPV4的网络情况下, 略为研究、探讨了一下ARP的欺骗与防范技术。

摘要:由常见的ARP欺骗攻击问题, 通过对ARP基本概念的认识和对ARP攻击的原理及方法的分析, 提出了ARP欺骗攻击的相关防范方法及技术。

关键词:ARP协议,ARP欺骗,ARP攻击,ARP攻击防范

参考文献

[1]51cto.com网络安全频道.

浅谈ARP欺骗原理与解决方法 篇6

1 ARP协议简介和工作原理

1.1 ARP协议简介

ARP,中文名为地址解析协议,全称Address Resolution Protocol,工作在数据链路层,将电脑的32位IP地址解析为48位的MAC地址,保证网络通信的顺利进行。具体说来,ARP就是将网络层(OSI的第三层)IP地址解析为数据链路层(OSI的第二层)的物理地址[1]。

1.2 ARP协议的工作原理

装有TCP/IP协议的电脑中都有一个已生成的ARP缓存表,表中的一组IP地址和MAC地址对应一台电脑,如下图。

以电脑A(172.31.50.1)向电脑B(172.31.50.2)发送数据为例,电脑A先在ARP缓存表中寻找是否有电脑B的IP地址。如找到电脑B的IP地址,直接把MAC地址写入帧里面发送;如没有电脑B的IP地址,电脑A会在局域网内发送一个广播,向本网段的所有电脑询问:“172.31.50.2的MAC地址是多少呀?”其他电脑不回应这一询问,只有电脑B接收到才向电脑A作出回应:“172.31.50.2的MAC地址是bb-bb-bb-bb-bb-bb。”电脑A知道了电脑B的MAC地址,就可对电脑B发送信息了。同时,更新了自己的缓存表,下次再对B发送数据时,直接在缓存表找即可。ARP缓存表采用老化机制,删除长时间不用的地址组,可以缩短缓存表的长度,加快查询速度[2]。

2 ARP协议欺骗原理

从ARP协议漏洞分析可知,应答可随意发送,并非只有发送了ARP请求后才回应。当电脑接收到ARP应答数据包时,对ARP缓存表进行更新,将IP和MAC地址对应存储在缓存中。当局域网中的电脑B向电脑A发送一个伪造的ARP应答,此应答是电脑B冒充电脑C伪造出来的,即IP地址为172.31.50.3,对应的MAC地址是bb-bb-bb-bb-bb-bb,当电脑A接收到电脑B伪造的ARP应答后,就会更新ARP缓存,这样电脑B与A之间的通信替代了C与A之间的通信[3]。

ARP攻击是通过伪造IP和MAC地址的对应关系实现ARP欺骗,产生大量的ARP通信数据包使网络阻塞,攻击者只要接连不断地发送伪造的ARP响应包,就可更改目标电脑缓存表中的IP-MAC条目,引起网络中断或中间人攻击等不良后果。

3 ARP欺骗的诊断方法

3.1 利用ARP缓存表查找

任意选两台不能上网的电脑,在DOS窗口下运行arp-a命令。如两台电脑的缓存表中除了有网关的IP-MAC地址对应项外,都包含有172.31.50.3的IP地址,则可断定IP地址是172.31.50.3的电脑就是攻击者。

3.2 利用命令诊断ARP欺骗

如发现电脑上网异常现象,可通过如下操作判断电脑是否被ARP攻击:

点击“开始”按钮—选择“运行”—输入命令“arp–d”—点击“确定”按钮,然后重新上网,如能恢复正常,说明掉线可能是ARP欺骗引起。arp-d命令只能用于清除并重建缓存表,不能抵御ARP欺骗,执行后可能再次遭受攻击。

4 ARP欺骗后的解决办法

(1)对感染ARP病毒者,使用杀毒软件清除病毒,最彻底的办法是对受感染电脑重新安装系统。

(2)对被ARP欺骗者,手动绑定网关mac地址。方法如下:

(a)获得路由器的内网MAC地址(例如网关地址172.31.1.1的MAC地址为aa-aa-aa-aa-aa-aa)。

(b)编写批处理文件AntiArp.bat内容如下:

@echo off

arp -d

@echooffarp-darp-s172.31.1.1aa-aa-aa-aa-aa-aa

将该批处理文件AntiArp.bat拖到“windows—开始—程序—启动”中。开机时该批处理就自动执行了。

(3)安装ARP防火墙软件,主动抵御ARP攻击。 可显著防范被ARP欺骗,并能快速检测出感染电脑的MAC地址,找到进程路径后,选择终止该进程,清除病毒文件。

(4)对交换机进行IP和MAC地址的动态绑定

思科Dynamic ARP Inspection(DAI)在交换机中提供IP和MAC地址的绑定技术,可动态建立绑定关系。DAI是以DHCP Snooping绑定表为基础,对没有使用DHCP服务器的个别电脑,可通过静态添加ARP access-list实现绑定。DAI配置是针对VLAN,对同一VLAN内的端口可开启DAI也可关闭。DAI通过控制端口的ARP请求数据包数量,达到防范ARP攻击的目的。

5 结束语

上面谈到ARP欺骗造成局域网网络异常,让被欺骗的计算机不能正常访问内外网,甚至造成大面积的网络瘫痪;现在我们根据ARP协议欺骗原理和攻击方式,对ARP欺骗电脑进行强有力的查杀,彻底处理,让ARP木马程序无处可藏,从而告别ARP欺骗净化网络环境,营造安全文明健康的网络氛围。

摘要:大部分局域网都受到过ARP欺骗的攻击,这严重影响了正常工作和学习。鉴于此现象,本文通过ARP协议原理揭穿ARP欺骗,并提出相应的处理措施。

关键词:ARP协议,欺骗,IP地址,MAC地址,缓存

参考文献

[1]查普尔,蒂特尔.TCP/IP协议原理与应用[M].北京:清华大学出版社,2009.

[2]程秉辉.IP网络安全技术[M].北京:人民邮电出版社,2008.

园区网中ARP欺骗防范设计与实现 篇7

近来,许多园区网中都出现了ARP攻击现象,给园区网的正常使用造成了很大的影响,甚至造成园区网中大量用户无法访问外部网络。同时,ARP病毒清理和防范都相对比较困难,给许多网络管理员造成了很大的困扰,所以我们很有必要分析一下ARP欺骗的原理。

1 ARP欺骗的原理及类型

ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的底层协议,对应于数据链路层,负责将某个IP地址解析成对应的MAC地址[1]。

当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。协议设计者当初并没有考虑,ARP协议不只在发送了ARP请求才接收ARP应答。如果网络中,某台设备发送一个伪造的ARP应答,网络就可能出现问题。

1.1 ARP欺骗原理[2]

假设某小型局域网中,有三台主机PC1、PC2、PC3。PC1的地址为:IP:192.168.1.1,MAC:00-1F-D0-58-EF-D1;PC2的地址为:IP:192.168.1.2,MAC:00-1F-D0-58-EF-C3;PC3的地址为:IP:192.168.1.3,MAC:00-1F-D0-58-E6-D6。如图1所示。

正常情况下PC1和PC3之间进行通讯,但此时PC2向PC1发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.1.3(PC3的IP地址),MAC地址是00-1F-D0-58-EF-C3(PC3的MAC地址本来是00-1F-D0-58-E6-D6)。当PC1接收到PC2伪造的ARP应答后,就会更新本地的ARP缓存,这时PC2就伪装成为了PC3,PC1被欺骗了。同理,PC2可以向PC1发送一个ARP应答,伪装成为PC3。这就是典型的ARP欺骗过程。

1.2 ARP欺骗类型

1.2.1 网关欺骗

网络中,攻击者通过伪造arp request/reply报文,在报文的源IP地址字段中填入网关的IP地址,但源MAC地址不是网关MAC地址,一般情况下为发起攻击者的主机MAC地址。从而导致其它客户端更新主机的ARP缓存表,形成错误的对应关系。网络中,到网关的通信的数据包都被转发到了发起攻击的主机上[3]。

1.2.2 协议报文欺骗

攻击者通过伪造arp request/reply报文,在报文源IP地址或源MAC地址字段填入非法的IP地址或MAC地址,导致其它主机或网关更新ARP缓存表,形成错误的对应关系[4]。

1.2.3 ARP报头欺骗

攻击者通过伪造ARP报头字段,在数据帧源MAC地址字段中填入网关的MAC地址,导致交换机中的MAC地址表形成错误的对应关系,无法正常转发数据帧,同时可能向外发出大量的广播报文[5],导致网络拥塞,使得主机无法与网关及其他主机正常通信。

2 防止ARP欺骗的解决方案

2.1 利用交换机防止ARP欺骗

在交换机上,通过配置防止ARP欺骗。本文将通过一个实例进行分析。假设用户PC1的IP为192.168.10.1,攻击者PC2的IP为192.168.10.2,网关的IP为192.168.10.254,对攻击者PC2的网关欺骗进行防御。如图2所示。

2.1.1 anti-arp-spoofing

在交换机接口模式下开启anti-arp-spoofing功能,防止ARP欺骗。在交换机上做如下配置:

Switch(config)#interface fastEthernet 0/10

Switch(config-if)#Anti-ARP-Spoofing ip 192.168.10.254 //过滤arp协议报文中,源IP为指定IP 192.168.10.254的arp报文

2.1.2 端口安全和ARP-Check

利用交换机的端口安全和ARP-Check组合功能防止ARP攻击。

① PC机使用静态IP地址是,在交换机上做如下配置:

Switch (config)#port-security arp-check //启动arp-check功能

Switch (config)#interface fastEthernet 0/10

Switch (config-if)#switchport port-security //打开端口安全功能

Switch (config-if)#switchport port-security maximum 1 //配置最大安全地址数

Switch(config-if)#switchport port-security mac-address 001f.d058.efe1 ip-address 192.168.10.2 //静态绑定安全IP地址及MAC地址

② 当PC机从DHCP服务器获取动态IP地址时,在交换机上做如下配置:

Switch (config)#service dhcp //打开DHCP 中继功能

Switch (config)#service dhcp address-bind port //动态绑定DHCP分配的IP地址

需要指出的是,动态绑定仅适用于所绑定的IP及MAC数与端口安全最大地址数一致的情况,当端口安全最大地址数大于所绑定的IP及MAC数时,是无法避免攻击者伪造ARP攻击报文的。

2.1.3 MAC ACL+Arp-check+MAC地址绑定

当主机PC2利用sniffer攻击时,通过Mac ACL、ARP-check和Mac地址绑定组合功能,防止Arp攻击。在交换机做如下配置:

Switch#(config)Mac access-list extended macarp //定义一个MAC地址访问控制列表并且命名为macarp

Switch(config)#deny host 001f.d058.efe1 any //定义主机PC1可以访问任意主机

Switch(config)permit any any //定义所有主机可以访问主机PC1

Switch(config-if )mac access-group test in

2.2 利用GSN&reg机制防止ARP欺骗

千兆字节系统网络(Gigabyte System Network 简称GSN)是带宽最宽、延迟时间最小的互连网络标准。GSN&reg由锐捷安全交换机、安全客户端、安全管理平台、用户认证系统、安全修复系统、VPN客户端、RG-WALL防火墙等多重网络元素组成,实现同一网络环境下的全局联动,使网络中的每个设备都在发挥着安全防护的作用,构成的全新安全体系。

GSN从ARP协议自身的特点入手,在客户端进行静态ARP的绑定,在网关进行可信任ARP绑定,以达到从根本上解决ARP欺骗的问题。

2.2.1 主机ARP静态绑定

首先在主机上进行网关的ARP静态绑定,使用静态绑定方式,从而防止主机受到其它主机的ARP网关欺骗。当用户上线时,SMP下发该用户所对应的网关IP和Mac地址,由SU在主机端进行网关Mac和IP的ARP静态绑定。SU在认证成功后进行ARP静态绑定,然后定时进行ARP静态绑定是否被更改的检测,如果被更改,则重新进行绑定,以防止一些病毒或木马以合法的方式对ARP静态绑定进行的修改。当用户下线时,系统自动删除主机的网关ARP静态绑定。如图3所示。

2.2.2 防止主机冒充其他主机欺骗网关

当用户上线时,由SAM传递用户的网关信息,SMP根据网关的相关信息,在网关完成主机IP地址和Mac地址的ARP静态绑定。把该方式与主机ARP静态绑定结合起来使用,能够达到双绑定的效果。用户上线时,通过SMP在网关进行可信任ARP的绑定,当用户下线时,通过SMP在网关删除可信任的ARP。如图4所示。

总之,通过主机静态ARP绑定和网关可信任ARP绑定,能够彻底解决网络中存在的主机欺骗网关和主机欺骗其他主机的ARP欺骗攻击行为。并且系统能够自动进行ARP绑定,实现自动防御。配置完成后,管理员不需要再进行手动的干预,大大降低了网络管理的复杂度。

3 结语

ARP协议在设计上是存在一定缺陷的,黑客们可以利用这些漏洞发起攻击。本文简单介绍了 ARP 欺骗的原理和常见的攻击形式,详细介绍了在园区网中,防止ARP攻击的解决方案,实践证明,该解决方案可以有效地避免ARP欺骗发生,避免ARP攻击对园区网带来的影响。

摘要:ARP欺骗对园区网的正常使用造成了很大的影响。阐述了ARP欺骗的原理和常见的欺骗类型,并提出了解决方案。通过交换机的端口安全、ARP-Check等功能和GSN&reg机制防止ARP欺骗,实际应用效果良好。

关键词:ARP欺骗,MAC地址,交换机,GSN机制

参考文献

[1]谢希仁.计算机网络(第5版).北京:电子工业出版社,2009

[2]王继龙,安淑梅,邵丹.局域网安全实践教程.北京:清华大学出版社,2009

[3]潘风.局域网中的ARP欺骗防范.计算机时代,2007;(5):28—29

[4]任侠,吕述望.ARP协议欺骗原理分析与抵御方法.计算机工程,2003;9:127—128

公共图书馆ARP欺骗分析与防范 篇8

1 局域网ARP攻击的原理

1.1 ARP协议运行原理

ARP地址解析协议是一个基于链路层的网络协议, 负责将某个IP地址解析成对应的MAC地址。协议运行在OSI模型的第二层, 在该层和硬件设备接口间进行数据交换, 由于处在第二层的以太网交换设备并不能有效识别局域网内的IP地址, 因此IP地址与局域网终端设备的MAC地址之间就必须存在一条可以进行数据交换的“通道”, ARP协议就是用来维持这个“通道”畅通的物质。ARP协议进行数据交换时, 它首先请求主机发送出一条含有本机希望访问的终端设备的IP地址数据条目, 而后根据终端设备回复的一条含有IP和MAC地址相对应的数据包来回复局域网主机, 这样局域网内的主机就获得了需要数据交换设备的IP地址对应的MAC地址, 与此同时局域网内的主机将这个IP—MAC地址相对应的数据放入自己的ARP表缓存起来, 以节约ARP通信信道占用率, 提高数据交换效率。局域网内主机都拥有一个ARP缓存池, 这个缓存池存放了自主机启动以来所有的本局域网内终端设备的IP地址与MAC地址之间的映射记录。主机每隔一定的时间或者当收到终端设备ARP应答, 都会用最新采集到的IP—MAC地址对应信息来对ARP缓存池进行数据更新。ARP协议就是通过目标设备的IP地址, 查询该设备的MAC地址, 以保证局域网内设备间的数据通信的畅通。ARP地址欺骗就是通过伪造IP地址和MAC地址之间的对应关系, 制作虚假的数据信息并在局域网内产生大量的ARP通信量, 占用大量网络资源, 造成网络阻塞, 从而影响网络的安全。

1.2 ARP协议自身存在的弊端

ARP协议是一个高效的数据链路层协议, 作为一个局域网协议它自身也存在着弊端, 由于协议的基础是建立在各主机之间的相互信任, 且其本身不具备认证功能, 换句话说就是本局域网内终端设备的IP地址与MAC地址之间的映射记录必须是真实有效的, 然而ARP缓存池所接收到的ARP协议包是不定期进行数据更新的, 局域网内任意一台主机即使在没有ARP请求下也可以做出应答, 只要接收到的协议包是完整有效的, 局域网内的主机就会根据最新采集到的IP—MAC地址对应信息来对ARP缓存池进行存储数据更新。这一过程中主机并不检验这条协议包的真实性。这样局域网内的攻击者就可以随时上传虚假的地址映射信息来进行网络攻击了。

1.3 ARP协议攻击方式

常见的局域网ARP攻击方式有两种:断网服务和ARP地址欺骗。

1.3.1 断网服务

断网服务攻击是通过外部网络向局域网内路由主机提供大量的虚假ARP协议数据包, 这些虚假的ARP协议数据包所含的IP—MAC地址对应信息来都是错误的, 从而导致通信失败, 并大量占用网络带宽资源, 使得整个图书馆局域网性能显著下降或网络瘫痪,

1.3.2 ARP地址欺骗

ARP地址欺骗技术在现如今的以太网中, 并没有对报文信息进行真实性校验, ARP协议包数据也不例外, 图书馆内的主服务器也无法识别出伪造的ARP协议数据包, 当不段的有新的IP—MAC地址对应信息来对ARP缓存池进行存储数据更新的时候, 局域网主机就处于被动接收协议状态, 不会主动地发出ARP地址协议的请求。ARP地址欺骗的核心就是修改每个局域网系统ARP缓冲池中缓存的MAC地址与IP地址映射表数据。最终ARP地址欺骗攻击的重要手段就是是发送错误的ARP广播数据消息给局域网主机或者路由器, 这些错误的ARP协议信息诱骗本地局域网或路由器转发到不正确的交换端口, 这样就造成了局域网的故障, 其中大部分的木马或病毒使用ARP地址欺骗攻击也是为了达到这个目的, 这种现象主要发生在图书馆局域网中的电子阅览室和办公网络内, 我们需要严加防范。

2 ARP攻击现象及处理方法

2.1 ARP攻击具体现象

公共图书馆一般都由几组局域网, 几百台计算机组成。有一次办公室计算机突然出现IP地址冲突提示, 而且点击“确定”之后更改新的IP地址重启后又再出现同样的对话框内容, 局域网连接出现时断时续并且网速较慢等现象, 重启后恢复正常, 但是10分钟左右又重复出现问题。所有和办公室同处在一个局域网网段的计算机都发生了这一故障。通过运行相关的软件分析数据包内容, 发现该局域网中有大量的ARP协议数据包在不断的发送, 发送量远远超过正常水平, 启动ARP专用检测工具发现有几台计算机的网卡处于混杂模式 (prorruscuoas) , 显示被ARP病毒感染。

2.2 ARP病毒的处理

首先我们要在局域网中运行一些ARP病毒检测工具来查找到病毒主机, 列如:“360安全卫士”下的ARP检测工具:ARP Checker此检测工具可以对近期流行的局域网ARP地址欺骗病毒进行有效的定位, 快速查找到病毒主机。也可以使用ARP专用检测工具通过主动定位方式进行查找, 处于ARP攻击源的终端设备网卡会处于混杂模式, 可以通过ARPKiler专用工具扫描局域网内的每台计算机的网卡是否处于混杂模式来判断这台设备是不是“伪主机”。找到受病毒感染设备后要断开染毒设备的网络连接, 运行ARP专杀工具来进行病毒的查杀, 或者重新更新这台设备的操作系统, 运行相关的杀毒软件和ARP检测工具软件, 确认病毒完全处理完毕, 才可以恢复网络连接。

3 ARP地址欺骗攻击的防范措施

ARP地址欺骗是利用了网络协议固有的设计缺陷进行攻击的, 因此防御这类病毒比较困难。如果我们对网络协议进行较大的修改就会破坏它与局域网内TCP/IP协议的兼容性, 造成局域网连接状态的不稳定。ARP地址欺骗类的病毒还是很容易复发, 一般我们在查杀病毒后的一周左右还会有病毒出现, 这样就给在图书馆内学习的读者和我们的工作人员带来了很大的困扰。ARP欺骗类病毒之所以会反复发作, 其中最重要的因素就是这类病毒广泛存在于互联网中, 它们通过微软的系统漏洞进入系统里面, 如果局域网内的设备没有打好系统补丁, 就很容易再次受到病毒攻击, 只要做好下面几个安全防范措施, 就可以有效的防范ARP欺骗类病毒的攻击了。

(1) 在图书馆的各组局域网内做好设备的IP-MAC地址的绑定工作 (即将系统分配的IP地址与终端设备网卡的MAC地址绑定) , 同时在核心交换机设备和客户端都要绑定, 这样就可以使各组局域网免受ARP病毒的攻击了。 (2) 使用相对比较安全的网络拓扑结构。及将整改图书馆网络分为不同的网络段, 在通过核心交换设备连接, 每一个网段仅由能互相信任的计算机或职能相近的计算机组成。这样每个网段的ARP请求只能在一个网段里传送, 这在一定程度上增加了ARP地址欺骗攻击的复杂程度, 笔者目前就采取了这种方法。 (3) 提高安全意识, 养成良好的安全习惯, 全网所有电脑都打齐系统补丁并且禁用系统默认的的自动播放功能, 防止病毒从移动硬盘、U盘等移动存储设备进人计算机。发现染毒计算机后对该机器进行深度处理, 进行全盘杀毒或重新安装操作系统, 每台设备都安装杀毒软件并保持更新到最新版本, 部署具有全网监控功能的杀毒软件或者硬件监控设备。

4 结语

浅析ARP欺骗及其防范 篇9

关键词:ARP,协议,欺骗,IP地址,HAC地址,防范

0 引言

协议欺骗是指通过对通信双方使用协议弱点的利用,冒充其中一方与另一方进行通信的行为。对于广播式网络,只要更改自己网卡的通信。对于交换机网络环境,如果要截获网络上不属于自己的通信,可以通过协议欺骗来实现。ARP欺骗攻击是一种典型的协议欺骗类攻击,攻击主机通过发送伪造的ARP应答包来更新主机的ARP缓存,从而赢得目标主机的信任,然后再实施有效攻击或非法监听网络数据包,造成目标主机被破坏或机密信息泄漏等一系列灾难性后果。

1 什么是ARP协议

ARP (Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的低层协议,负责将IP地址解析成对应的MAC地址。

2 ARP协议的工作原理

ARP协议的功能分为两部分:一部分在发送数据包时请求获得目的主机的物理地址;另一部分是向请求物理地址的主机发送解析结果。

ARP协议是这样工作的:首先,网络通信源机器向网络广播ARP请求包,请求网络通信目的机器IP所对应的MAC地址;然后使用该IP的机器会向请求方发送一个含有其MAC地址的ARP回应包,这样请求方就知道向哪个MAC地址(目的主机)发送数据。

ARP协议存在以下安全问题:无链接、无认证、动态性、广播。利用ARP协议的这些安全问题,可以设计ARP协议欺骗的步骤和方法。

(1)主机在不知道目的IP对应的MAC地址时,进行ARP广播请求,入侵者可以在接收到该ARP请求后用自己的MAC地址应答,进行假冒。

(2)由于被假冒机器所发送的ARP应答有可能比入侵者发送的应答晚到达请求主机,为了确保请求的缓存中绝大部分时间存放的是入侵者的MAC地址,可以在收到ARP请求后稍微延迟一段时间再发送一遍ARP应答。

(3)有些系统会向自己缓存中的地址发送非广播的ARP请求来更新自己的缓存。在交换网络环境下,如果请求主机缓存中已存有正确主机的MAC地址,入侵者就不能用以上接收请求然后应答的方法来更换被攻击主机缓存内容。由ARP弱点分析可知,应答可以随意发送,不一定要在请求之后。

这里我们模拟局域网中通信节点流程并列举了3个通信节点实例:

客户节点A IP地址:172.16.22.53

MAC地址:00-10-5c-d8-f4-66

网关节点B IP地址:172.16.22.1

MAC地址:00-Of-e2-20-86-4b

服务节点C IP地址:220.175.13.2

MAC地址:00-10-5c-db-6c-75

客户机A与服务器C通信流程:

客户机A→网关节点B→互联网Internet→服务器C (数据通信方向从A到C)

服务器C→互联网Internet→网关节点B→客户机A (数据通信方向从C到A)

如果现在网络中存在欺骗源主机D(IP:172.16.22.26)MAC地址,MACD不断发送ARP欺骗包,包的内容(网关节点IP:172.16.22.1与MAC地址——MACD,是欺骗源计算机D的MAC地址)。这样所有计算机ARP表中的网关IP对应的MAC正确记录被篡改。节点通信是利用对发的MAC地址,所以所有计算机ARP中的网关IP记录被篡改后,改变了计算机的通信方向。

网络通信中转攻击后黑客很容易在所有通信数据中实现病毒入侵。这样主机A与服务器C的通信,中间数据被中转监听、窃取。所有正常数据流相对ARP欺骗源计算机D,是透明的,可以任意篡改数据包中的内容,植入大量木马病毒与黑客程序,目的是为了获取用户信息。

3 ARP欺骗的防范

在交换式网络中防范ARP欺骗主要有以下几种方法:

(1)使用静态ARP表

在关键设备如网关、防火墙和边界路由器等设置静态的ARP,不要让系统刷新设定好的ARP转换表。在网关中使用静态ARP表,则可以避免通过网关进行ARP欺骗。

如要显示所有接口的ARP缓存表,可键入:ARP-a。

对于指派的IP地址为:172.16.22.36的接口,要显示其ARP缓存表,可键入:

ARP-a-N 172.16.22.36。

要添加将IP地址:172.16.22.27解析成物理地址:00-10-5c-db-6c-75的静态ARP缓存项,可键入:ARP-s 172.16.22.27 00-10-5c-db-6c-75。

要清除ARP缓存表,可键入:ARP d。

(2)使用ARP服务器

在内部网络中设置ARP服务器,通过该服务器查找自己的ARP转换表来响应其它机器的ARP广播,而禁止其它系统响应ARP请求。

(3)定期轮询

管理员定期轮询(可通过软件实现)网络内部的IP地址与MAC地址的对应关系,通过与已有记录的比较来发现ARP欺骗。

(4)主动出击

主动出击,用一些专业的安全工具(如360的ARP防火墙、瑞星防火墙等)在网络中进行检测,可以检测到本地网络上的ARP欺骗报文。

参考文献

[1]Laura A,Chappell Ed Tittel著.马海军,吴华等译.TCP/IP协议原理与应用[M].北京:清华大学出版社,2005,3.

[2]高永强,郭世泽.网络安全技术与应用大典[M].北京人民邮电出版社,2003.

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:66553826@qq.com

上一篇:安徽省地方税务局关于加强未达起征点纳税人地方税收管理的通知 下一篇:高中哲学原理:发展观(原理+方法论)