ARP欺骗及防范方法

关键词: 发作 校园网 欺骗 用户

ARP欺骗及防范方法(精选九篇)

ARP欺骗及防范方法 篇1

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欺骗原理及解决方法 篇2

关键词:ARP欺骗;IP地址;MAC地址

中图分类号:TP393.18 文献标识码:A文章编号:1007-9599 (2011)05-0000-01

Brief Introduction of ARP Spoofing Outlined Principles and Solutions

Shen Haiwan

(School of Information Engineering, Zhejiang,Huzhou313000,China)

Abstract:With the extensive application of the Internet, "ARP" deceit-like virus outbreak followed, full of different parts of our network management to bring our wide range of issues. ARP (Address Resolution Protocol, Address Resolution Protocol) is a located in the TCP / IP protocol stack in the low-level protocol, responsible for IP address resolution into a corresponding MAC address. Once the link error, we can not communicate properly and the target host, resulting in paralysis of the entire network. In this paper, principle of ARP spoofing and a number of solutions is briefly described.

Keywords:ARP spoofing;IP address;MAC address

一、ARP的工作原理

ARP是一个位于TCP/IP协议栈中的低层协议,负责将某个IP地址解析成对应的MAC地址。整个解析过程是一台主机先向目标主机发送包含IP地址信息的广播数据包,即ARP请求,然后目标主机向该主机发送一个含有IP地址和MAC地址数据包,通过MAC地址两个主机就可以实现数据传输了。

二、ARP欺骗原理

一般计算机中的原始的ARP协议,假如把ARP协议看成一个人,那么它就像一个思想不坚定,容易被其它人影响的人,ARP欺骗/攻击就是利用这个特性,误导计算机作出错误的行为。ARP欺骗攻击的包一般有以下两个特点:第一,以太网数据包头的源地址、目标地址和ARP数据包的协议地址不匹配;第二,ARP数据包的发送和目标地址不在自己网络网卡MAC数据库内,或者与自己网络MAC数据库MAC/IP不匹配。

将ip地址转换为mac地址是ARP的工作,在网络中发送虚假的ARP respones,就是ARP欺骗。从影响网络连接通畅的方式来看,ARP欺骗分为二种,一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。第一种ARP欺骗的原理是——截获网关数据。它通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。第二种ARP欺骗的原理是——伪造网关。它的原理是建立假网关,让被它欺骗的PC向假网关发数据,而不是通过正常的路由器途径上网。在PC看来,就是上不了网了,“网络掉线了”。

三、ARP欺骗的症状

计算机网络连接正常,有时候PC无法访问外网,重新启动路由器又好了,过一会又不行了;用户私密信息被窃取;局域网内的ARP广播包巨增,使用ARP查询时发现不正常的MAC地址,或者是错误的MAC地址,还有一个MAC地址对应多个IP的情况;局域网内出现网络拥塞,甚至一些网络设备当机。

四、ARP欺骗的判别

假如网络出现掉线了,是ARP造成的,如何去判断?如果用户发现以上疑似ARP欺骗的情况,可以通过如下操作进行诊断:点击“开始”按钮->选择“运行”->输入“arp–d”->点击“确定”按钮,然后重新尝试上网,如果能恢复正常,则说明此次掉线可能是受ARP欺骗所致。

五、ARP问题解决

现在看到ARP解决方案,主要有以下的二种。

(一)静态绑定(IP+MAC法)。解决ARP欺骗最常用的方法就是做IP和MAC静态绑定,在网内把主机和网关都做IP和MAC绑定。 欺骗是通过ARP的动态实时的规则欺骗内网机器,所以我们把ARP全部设置为静态可以解决对内网PC的欺骗,同时在网关也要进行IP和MAC的静态绑定,这样双向绑定才比较保险。下面简单介绍下具体绑定方法:

1.对每台主机进行IP和MAC地址静态绑定。2.arp -s可以实现 “arp –s IP MAC地址 ”。例如:“arp –s 192.168.0.1 CC-CC-CC-CC-CC-CC”。3.设置成功会在PC上面通过执行arp -a 可以看到相关的提示:

Internet Address Physical Address Type

192.168.0.1 CC-CC-CC-CC-CC-CC static(静态)

(二)主动维护(路由器ARP广播)。现在很多路由器具有ARP广播功能,它的原理是路由器不间断的广播正确的路由器ARP。例如:路由器的IP是192.168.0.1 MAC:11:12:13:14:15:16,那它就会不停的每秒广播自己的正确ARP。不管你内网机器是否喜欢收,1秒收一个一秒收一个,收到了就改一次ARP表。无穷无尽无止无息,如果出现ARP欺骗,欺骗者发出欺骗信息,PC刚收到欺骗信息就收到了正确信息。所以问题也就解决了。但是有个隐患,就是广播风暴的问题。不间断的广播是会影响内网的网络。以每秒次的频率发送APR广播在内网是微乎其微的,因为任何一个机器都会有广播发生,多一个ARP最多相当于多几台机器的信息量,对内网是不会有影响的。但是这种方式有它的问题,当欺骗者加大欺骗ARP的频率超过路由时(在欺骗软件上面实现非常容易),还是会造成欺骗的效果。解决也应该很简单就是加大路由器的广播频率,但是这样也未必能解决好问题。因为当你使用超量路由器ARP广播的时候,网络内部容易造成混乱,为了一个ARP,7*24小时折腾网络,致使网络的性能大大的下降。

六、结论

不坚定的ARP协议,注定了它成为网络攻击时被利用的对象,近些年来,ARP欺骗在网络上一直很猖獗,给广大用户带来了极大的损失。所以我们只有了解它,才能采取有效的防范措施,通过本文的阐述,让大家对ARP欺骗有一定的了解,能够采取一些行之有效的防范措施,为构建和谐网络社会起到积极作用,促进信息社会健康发展。

参考文献:

[1]雷震甲.网络工程师教程[M].清华大学出版社,2006

ARP欺骗及防范方法 篇3

本文首先简要介绍ARP协议并浅析ARP欺骗的工作原理,以及ARP欺骗的分类.在此基础上,对防御ARP攻击提出一些建议。

1 ARP协议的工作原理

以太网上的每台主机都有两个地址,一个是48位的物理地址,也叫MAC地址,它储存在网卡中且不能更改;另一个是32位的IP地址,用于在网络中区别不同的主机,如图1所示.地址解析协议(ARP)负责将IP地址转换为MAC地址.每台主机上都有一张ARP缓存表,记录着IP地址与MAC地址的对应关系.当其中一台主机需要将一个数据包发送到另外一台主机时,因为只知道目的主机的IP地址,并不知道目的主机的MAC地址.所以发出数据包的主机会首先检查自己的ARP缓存表,看是否存在该IP地址对应的MAC地址.如果有,就直接将数据包发送到这个MAC地址;如果没有,就会向本地网络发出一个ARP请求的广播包.广播包中包含了发出广播包的主机的IP地址、MAC地址和目的主机的IP地址.本地网络中的主机在收到这个ARP广播包后会检查广播包中目的主机的IP地址,看是否跟自己的IP地址相同.如果不同,丢弃这个广播包;如果相同,回复一个包含自身MAC地址的ARP应答。

2 ARP欺骗的工作原理

ARP协议的基础是信任局域网内所有的人,而ARP欺骗恰恰是利用了这种信任.欺骗者的主机首先发出一个ARP回复,注意,这是一个并非对应ARP请求广播包的回复,而是欺骗者伪造的一个ARP回复.在以太网中,没办法对数据包进行真实性检查,因此没法发现这是一个伪造的ARP回复.而且在ARP协议中并没有规定提出请求然后才能有回复,这是为了在某台主机的IP地址发生改变时可以第一时间通知其它主机.因此该回复会被该回复数据包中的目的主机所接受,这个目的主机又称为被欺骗的主机,它会根据数据包内的错误内容刷新自己的ARP缓存表.当被欺骗的主机要发送数据包给另一个主机的时候会先查询ARP缓存表中目的主机的IP地址所对应的MAC地址.如果这个MAC地址恰好根据之前欺骗者伪造的ARP回复而做了错误的修改,那么被欺骗主机所发出的数据包就没办法到达目的主机。

3 ARP欺骗的分类

ARP欺骗可以大致分成两类,一类是对网关的欺骗,即篡改网关的ARP缓存表.首先伪造IP地址及其对应的MAC地址,通知网关做修改,其中IP地址是正确的但其对应的MAC地址是错误的.然后按照一定频率不断刷新网关的ARP缓存表,使得真实的MAC地址无法保存在网关的ARP缓存表中.结果通过网关的所有数据都被送到错误的地址,该网段的网络瘫痪。

大多数学校机房的计算机都安装有还原精灵,每次开机就将硬盘还原成初始状态,用于保证病毒不会存留在计算机硬盘上.但是这样的设置却使得防毒软件的病毒库没法及时更新,因此无法阻拦新的病毒.一些同学将携带ARP病毒的U盘连接到机房的计算机上,在使用计算机的过程中,这些ARP病毒会攻击所在机房的网关,从而造成该网段所有用户都上不了网.网关欺骗的危害是巨大的,会严重影响教学的正常进行,也为网络管理带来很大的麻烦。

另一类ARP欺骗专门针对局域网内的主机.欺骗者首先将自己的主机伪造成网关,然后刷新其他主机的ARP缓存表.这样该网段内所有主机发出的数据都会通过欺骗者的主机,欺骗者可以通过一些嗅探软件窃取被欺骗者的密码和访问信息.欺骗者在接收被欺骗者发出的数据后将其转发给真正的网关,得到的反馈数据则通过网关先传给欺骗者的主机,然后再由欺骗者的主机转发给被欺骗者的主机.如果欺骗者选择不转发被欺骗者的数据,则被欺骗者无法上网,从而欺骗者的主机独享了整条线路的带宽。

4 防范ARP攻击的一些建议

基于校园网的特点,对ARP攻击的防范提出如下建议:

第一,要及时更新计算机的病毒库以及升级操作系统。对于在宿舍或办公室上网的用户,建议启动操作系统和杀毒软件的自动更新,或者定期下载学校FTP服务器上最新的病毒库以及操作系统的升级包来更新杀毒软件和操作系统;对于机房中的计算机,由于安装了还原精灵,每次开机,病毒库和操作系统将还原至初始状态,解决的方法可以在开机设置中添加相应的提示文本并让用户一进入操作系统就自动登录FTP服务器下载病毒库和升级包来更新杀毒软件和操作系统.对于安装后需要重新启动计算机的升级包,则由系统管理员负责更新.在局域网内下载病毒库和升级包这种小容量的文件并进行安装不会花费用户太多的时间,一旦用户养成习惯,不仅可以保证机房的计算机抵御ARP攻击,还可以查杀其它的病毒,可以说是一举两得。

第二,使用ARP防火墙。国内目前比较流行的有AntiARP防火墙、金山ARP防火墙、奇虎360ARP防火墙等。其中AntiARP因其功能强大且安装简单而深受好评,以单机个人版V5.01在Windows2000/XP/2003上安装为例。双击安装程序,然后一直点击下一步,安装完成之后在操作系统的任务栏中将添加一个红色的盾牌。对于普通用户,无需对软件做进一步设置。

第三,将IP地址和MAC地址进行静态绑定。从前面ARP欺骗的工作原理可以得知欺骗者通过修改ARP缓存表中IP地址所对应的MAC地址来达到欺骗的目的。如果将IP地址与MAC地址进行静态绑定,使之不能修改,则欺骗者的伎俩无法得逞.但是这样做的缺点是一旦网络硬件发生改变,比如对调了两台计算机的位置从而改变了各自连接的网络端口,就必须对所有计算机的ARP缓存表进行更新,因此该方法比较适合于网络环境较少发生变化的机房

第四,利用各种监测网络的软件,比如Sniffer这款软件,可以检测局域网中每台计算机发出的ARP数据包,能够发现是否存在ARP欺骗,以及哪台计算机正在进行ARP欺骗。不过采用这个方法比较被动,同时也会加大网络管理员的工作量。

参考文献

[1]吕晓阳.计算机网络应用[M].广州:广东科技出版社,2001:19-24.

[2]张鸿波,任志刚,肖静.MAC地址与交换机端口绑定方法的实践[J].中国数字医学,2007,(7):53-55.

[3]王奇.以太网中ARP欺骗原理与解决方法[J].网络安全技术与应用,2007,(2):42-44.

ARP欺骗原理与防治方法 篇4

关键字:ARP协议;ARP欺骗;防治

中图分类号:TP393.08文献标识码:A文章编号:1007-9599 (2010) 13-0000-01

ARP Spoofing Principle and Control Methods

Yang Guohua

(Yingtan Vocational&Technical College,Yingtan335000,China)

Abstract:ARP spoofing is used by hackers basic principle of ARP protocol flaws,one in the region through the terminal or server spoofing ARP broadcast packets to publish in order to achieve steal user accounts,altering content,embedded malicious code,release negative information,illegal activities such as monitoring data transmission purposes.How to prevent ARP spoofing,network management is now the most urgent task.

Keywords:ARP protocol;ARP spoofing;Prevention

一、ARP工作原理

ARP(Address Resolution Protocol,地址解析协议)协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。以太网不能识别IP包中的IP地址,它是以MAC地址来查找目的地的,因此在以太网中进行IP通信,就需要将IP地址转换成MAC地址,让数据包能发到指定的目的主机上,这就是ARP要解决的。

ARP转换的方式有两种方式:通过主机上的ARP缓存的映射表转换;通过向网络中发送ARP请求,得到目标主机的ARP应答,应答中含有MAC地址,来进行转换。

每台主机都拥有一个ARP缓存(ARP cache),存储内容是IP地址和MAC地址的映射表,通过此表来进行IP与MAC的转换,达到局域网之间主机的数据通信。在主机上可以使用ARP–a命令进行查看。由于ARP缓存中有IP与MAC的映射表,所以主机访问某IP的主机,就可以直接查询获得目标主机的MAC地址,在數据传输中直接将数据封装为MAC帧。这样就可以减少在网络传输中每次发ARP请求,增少网络通信流量。

二、ARP欺骗原理

ARP欺骗的核心就是向目标主机发送一个伪造的ARP应答,应答中的源IP地址和MAC地址映射是伪造的。目标主机获得这种ARP应答之后,就会更新其ARP缓存,这样就建立了一种错误的映射表,当然发送到指定的IP时,就无法封装正确的MAC地址,也就无法到达目标主机。

攻击主机发送ARP欺骗一般通过两种方式:

(一)伪造ARP请求报文。攻击者发送伪造的ARP请求报文,这个伪造的IP地址和MAC地址的映射的报文,目的就是使局域网其它主机接收此报文更新其ARP缓存,来达到欺骗的目的。

(二)伪造ARP应答报文。目前大多数操作系统一旦接收ARP应答报文立即会更新其ARP缓存,而不需去验证是否自己有发送ARP请求。因此,直接伪造ARP应答报文即可实现欺骗。

三、ARP欺骗的防治措施

针对ARP欺骗的核心思想,即是更改IP地址与MAC地址的映射,可以采用以下方面:

(一)设置静态的ARP缓存。给主机添加相应静态的ARP缓存记录,目的是接收到ARP欺骗的应答报文,也不更新本机的ARP缓存,让攻击者无法达到其ARP欺骗的目的。这种方法必须人工设置IP地址和MAC地址的映射,工作量巨大,针对小型的网络比较适用。方法是在主机上使用ARP–s命令来添加静态记录。如图1所示:

(二)交换机端口与主机MAC值的绑定。将局域网交换机的每一个端口与之相连接的主机MAC地址进行绑定,这就规定了出这个端口的MAC地址是固定的。如果该端口发现与绑定的MAC地址值不同,则交换机自动锁定此端口,使与此端口相连的主机无法连接到局域网。即攻击者发送伪造的ARP欺骗报文,端口立刻可以检测出MAC值不一样,让攻击者无法攻击网络,并中断攻击者连接网络的权利,这样也可以立刻找出攻击主机。这种方法只适合于高端的交换机,对于低端交换机是没有交换机的设置功能,无法实现。同时,如果是人为的变换了主机的连接端口,不通过管理员也无法连接到网络,例如:交换机的某一个端口坏了,连接这个端口的主机更换其他端口连接,也无法连接到网络必须经过交换机的设置才可以实现连网。

(三)使用虚拟局域网技术。虚拟局域网技术已是需要高端的网络设备才可以实现,低端的网络设备是没有网络管理配置功能,也就无法实现虚拟局域网的配置。这种方式可以让ARP欺骗局域于一个其被感染的一个虚拟网内,不会影响整个局域网的运行。由于ARP欺骗不能跨网段实施,那可以将整个局域网划分成各个小的虚拟局域网,不同网段的虚拟局域网就不会同时受到ARP欺骗的攻击,这样就减小了ARP的攻击范围,保证网络的可靠运行。

如图2所示,如A1是攻击主机,则只会影响VLAN10中的A2和A3主机,而VLAN20、VLAN30中的主机不会受影响

特别是针对具有绝密信息的主机的局域网,更应将其划分到专用的虚拟网中,避免其他未授权终端的攻击。

参考文献:

[1]金涛.公众网络环境中的ARP欺骗攻击与防范方法[D].上海:上海交通大学,2007

ARP欺骗及防范方法 篇5

1.1ARP协议

ARP欺骗, 一个让我们耳熟能详的网络安全事件, 普遍的存在于校园网、企业网等网络环境中, 给我们的工作、学习和生活带来了很大的不变, 轻则网络变慢、时断时续, 重则直接无法上网、重要信息被窃取, 可以说, ARP欺骗是网络的一块顽疾。分析ARP欺骗, 就不得不研究一下ARP协议, 因为这种攻击行为正是利用了ARP协议本身的漏洞来实现的。

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

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

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

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

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

1.2ARP欺骗原理

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

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

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

1.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欺骗, 欺骗本质都是一样。

1.2.3 其他欺骗类型

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

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

2ARP的主要欺骗及攻击方式

2.1ARP欺骗

网络欺骗是黑客常用的攻击手段之一, 网络ARP欺骗分为两种, 一种是对路由器ARP表的欺骗, 另一种是对内网主机的网关欺骗。前一种欺骗的原理是攻击者通过截获分析网关数据, 并通知路由器一系列错误的内网IP地址和MAC地址的映射, 按照一定的频率不断进行使真实的地址信息映射无法通过更新保存在路由器中, 结果路由器转发数据到错误的MAC地址的主机, 造成正常主机无法收到信息;后一种ARP欺骗的原理是伪造网关, 它的原理是把真实网关的的IP地址映射到错误的MAC地址, 这样主机在向网关发送数据时, 不能够到达真正的网关, 如果假网关不能上网, 那么真实的主机通过假网关也不能上网。

2.2中间人攻击

按照ARP协议的设计, 一个主机即使收到的ARP应答并非自身请求得到的, 也会将其IP地址和MAC地址的对应关系添加到自身的ARP映射表中。这样可以减少网络上过多的ARP数据通信, 但也为ARP欺骗创造了条件。如图1所示, PC-X为X主机, MAC-X为X主机的物理地址, IP-X为X主机的IP地址。PC-A和PC-C通过交换机S进行通信。此时, 如果有攻击者 (PC-B) 想探听PC-A和PC-C之间的通信, 它可以分别给这两台主机发送伪造的ARP应答报文, 使PC-A中的ARP缓存表中IP-C和MAC-B所对应, PC-C中的ARP缓存表中IP-A和MAC-B所对应。此后, PC-A和PC-C之间看似直接的通信, 实际上都是通过攻击者所在的主机间接进行的, 如图1虚箭头所示, 即PC-B担当了中间人的角色, 可以对信息进行窃取和篡改。这种攻击方式就称作中间人攻击。

2.3ARP泛洪攻击

攻击主机持续把伪造的IP地址和MAC地址的映射对发给受害主机, 对于局域网内的所有主机和网关进行广播, 抢占网络带宽并干扰正常通信。导致网络中的主机和交换机不停地来更新自己的IP地址和MAC地址的映射表, 浪费网络带宽和主机的CPU, 使主机间都不能正常通信。除了中间人攻击、ARP泛洪攻击外, 还有Dos攻击等。

目前知道的带有ARP欺骗功能的软件有“QQ第六感”、“网络执法官”、“P2P终结者”、“网吧传奇杀手”等, 这些软件中, 有些是人为手工操作来破坏网络的, 有些是做为病毒或者木马出现, 使用者可能根本不知道它的存在, 所以更加扩大了ARP攻击的杀伤力

3ARP攻击的主要防范措施

3.1IP地址和MAC地址的静态绑定

3.1.1 在用户端进行绑定

ARP欺骗是通过ARP的动态刷新, 并不进行验证的漏洞, 来欺骗内网主机的, 所以我们把ARP表全部设置为静态可以解决对内网的欺骗, 也就是在用户端实施IP和MAC地址绑定, 可以再用户主机上建立一个批处理文件, 此文件内容是绑定内网主机IP地址和MAC地址, 并包括网关主机的IP地址和MAC地址的绑定, 并把此批处理文件放到系统的启动目录下, 使系统每次重启后, 自动运行此文件, 自动生成内网主机IP地址到MAC地址的映射表。这种方法使用于小型的网络中。

3.1.2 在交换机上绑定

在核心交换机上绑定用户主机IP地址和网卡的MAC地址, 同时在边缘交换机上将用户计算机网卡的IP地址和交换机端口绑定的双重安全绑定方式。这样可以极大程度上避免非法用户使用ARP欺骗或盗用合法用户的IP地址进行流量的盗取, 可以防止非法用户随意接入网络, 网络用户如果擅自改动本机网卡的IP或MAC地址, 该机器的网络访问将被拒绝, 从而降低了ARP攻击的概率。

3.2采用VLAN技术隔离端口

局域网的网络管理员可根据需要, 将本单位网络规划出若干个VLAN, 当发现有非法用户在恶意利用ARP欺骗攻击网络, 或因合法用户受病毒ARP病毒感染影响网络时, 网络管理员可先找到该用户所在的交换机端口, 然后将该端口划一个单独的VLAN, 将该用户与其它用户进行隔离, 以避免对其它用户的影响, 当然也可以利用将交换机的该端口关掉来屏蔽该用户对网络造成影响

3.3采取802.1X认证

802.1X认证可以将使未通过认证的主机隔离, 当发现某台主机中毒时, 将禁止其认证从而达到将中毒主机隔离网络的目的。

例如, 在本人所在学校就是需要上网的用户要提前到网络管理中心登记, 也就是在网关中心申请一个用户名, 并创建密码, 并且把自己的MAC地址和用户名进行绑定, 如果自己的换网卡后, 还需要去网络管理中心进行重新绑定。用户上网前首先运行一个客户端软件, 输入用户名密码后, 通过认证服务器认证成功后才能上网。

3.4防火墙和杀毒软件

可以安装ARP防火墙或者开启局域网ARP防护, 比如360安全卫士等ARP病毒专杀工具, 并且实时下载安装系统漏洞补丁, 关闭不必要的服务等来减少病毒的攻击。

摘要:通过介绍ARP协议的概念和工作原理, 分析了当前ARP攻击的主要类型和特点, 提出了一些具体的防范措施, 来解决网络管理中出现的ARP的欺骗和攻击。

ARP欺骗的原理及解决方法 篇6

在介绍ARP之前, 我们先介绍下什么是MAC地址, MAC地址是烧录在Network Interface Card (网卡, NIC) 里的。MAC地址, 也叫硬件地址, 是由48比特长 (6字节) , 16进制的数字组成.0-23位是由厂家自己分配.24-47位, 叫做组织唯一标志符 (organizationally unique, 是识别LAN (局域网) 节点的标识。其中第40位是组播地址标志位。网卡的物理地址通常是由网卡生产厂家烧入网卡的EPROM (一种闪存芯片, 通常可以通过程序擦写) , 它存储的是传输数据时真正赖以标识发出数据的电脑和接收数据的主机的地址。

我们知道在互联网当中, IP地址是唯一的, 也就是说一旦确定了IP地址, 即可以向接收端的IP地址发送数据信息, 进行信息的传输。但在局域网 (确切地说是在数据链路层) 中进行数据传输时刚必须通过MAC地址进行通信, 所以就需要一种协议来解决从IP地址到MAC地址的办法。

ARP是解析地址的协议。也就是说, 所获得接收端的IP地址, 只是在想知道下一个接收机器的MAC地址时才加以利用。当接收端主机不在同一条数据链路的情况下, 使用ARP来检查下一个应该发送的网关的MAC地址。

二、ARP工作原理

假设局域网中有主机A和主机B两台计算机, 主机A有向主机B发送数据的需求, 但还不清主机B的MAC地址, 则其先向网络中发送一个包含主机B的IP地址的广播包。同一网段内的所有计算机都会收到这个广播包, 并对该包的内容进行分析, 当主机B发现目标IP地址就是自己的IP地址时, 则将自己的MAC地址附加到ARP应答包中, 返回主机A, 其它主机由于分析这个ARP广播包的IP地址不是自己的IP, 所以丢弃该包。主机A收到主机B发送的应达包后, 会将主机B的MAC地址存入到自己主机的缓存中, 在接下来的一段时间内, 直接从缓存中得到主机B的MAC地址并进行通信即可。

由于ARP协议能够自动地解析地址, 因此, 在使用TCP/IP通信的情况下, 人们并没有意识到MAC地址的存在, 只需考虑IP地址即可, 这也是人们忽略ARP协议存在的原因。

三、ARP协议的缺陷:

ARP协议是建立在互相信任的基础上的, 效率很高, 但存在安全隐患, 因为它只要收到一个ARP报文就会更新自己的缓存, 而不去验证自己是否发了这样的请求。所以就为ARP的欺骗提供了可能, 一些有恶意的站点一旦发布虚假的ARP报文, 就会干扰正常的上网秩序。

例如:局域网当中现有主机A, 主机B, 主机C三台计算机, 主机A有需求和主机B进行通信, 则主机A会发送一个ARP包广播当局域网当中, 主机B会发送应答包, 在主机A收到后, 将主机B的MAC地址存入缓存, 并开始通信。但如果主机C此时也发送一个ARP应答包, 告诉主机A它是主机B, 并将它自己的MAC地址发送给主机A, 则主机A在收到后会不加验证的将主机C的MAC地址存入缓存中并覆盖真正主机B的MAC地址, 这样一来, 主机A发给主机B的信息, 就全部发给了主机C了。

而在实际当中, 攻击者或中了ARP病毒计算机往往会伪装成网关的物理地址, 使得所有发往网关的数据全部发给了攻击者, 从而造成了局域网的瘫痪。

四、解决ARP攻击的方法:

1、绑定

用户在各自上网的计算机当中进行绑定:首先从网管人员那里得到正确的网关IP地址和MAC地址, 或者是在命令提示符下输入arp-a如图

然后继续在命令提示符下输入如下信息:Arp-s IP地址MAC地址。

本例中输入arp-s 192.168.110.251 00-0f-e2-7f-22-58即可。

如果觉得每次输入都较繁琐的话, 那我们可以做个批处理文件, 然后将其放入启动文件夹下, 每次开机后, 都会自动运行绑定网关程序。

批生理文件制作如下:

打开文本程序, 输入下列命令:

@echo off

Arp-d/清空arp缓存

Arp-s 192.168.110.251 00-0f-e2-7f-22-58/绑定网关的IP与MAC地址

最后要保存为BAT文件。

2、交换机绑定

在三层交换机上将所有上网的计算机的IP地址与MAC地址绑定。这样做虽然比较繁琐, 但可以在最大限度上防止ARP台骗以及盗用IP地址情况的发生, 具体操作视不同交换机命令有所不同, 下面以H3C的9508交换机为例进行操作:

3、使用专用软件

目前, 具有防护ARP欺骗功能的软件也较多, 较常见的有瑞星, 360安全卫士卫士, Anti-ARP等都有该功能, 它们的工作原理有的是以一定的频率向网络广播正确的ARP信息, 有的是将网关的IP地址与MAC地址绑定, 一旦收到与原网关MAC地址不同的信息时, 会及时报警。总之, 这些软件在一定程度上都能做到防护ARP欺骗, 所以建议读者务必安装。

本文主要介绍了ARP协议的工作原理, 以及由于设计缺陷而造成的ARP欺骗的解决方法, 目前此类病毒在高校和企事业单位还是比较严重的, 为了更好的防御, 建议还是多用几种防御的方法, 以加强网络的健壮性、安全性。

摘要:近年来, 大学校园网或多或少的会受收到ARP欺骗的侵扰, 这在一定程度上干扰了正常的教学秩序和工作秩序, 本文从ARP协议的工作原理出发, 找出ARP协议的缺陷及ARP欺骗的手段, 结合实际工作提出解决ARP欺骗的方法。

关键词:ARP,ARP欺骗,MAC地址

参考文献

[1].竹下隆史, 村山公保.TCP/IP综合基础篇[M].北京:科学出版社, 2004.

[2].吴小平.基于SNMP的ARP欺骗主动防御机制[J].华中师范大学学报, 2007 (4) .

浅析ARP欺骗及其防范 篇7

关键词: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.

ARP欺骗原理与防范 篇8

(一)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欺骗的分析与防范 篇9

(一)ARP欺骗的原理分析

1. ARP的原理和作用

ARP用于获取目的结点的MAC地址。通常,计算机会建立一个ARP高速缓存表,记录局域网计算机的IP地址和MAC地址的映射关系

假设某主机A要将一个数据包发送到目的主机B, A首先要根据B的IP地址查找其ARP高速缓存表中是否存在所对应的MAC地址,如果有,就直接根据此MAC地址封装数据帧并发送;如果没有,就向本地网段发起一个ARP请求的广播包,请求该IP地址的MAC地址是多少,由于ARP请求是一个广播包,所以本网段的所有主机都会收到这个包,并记录源主机A的IP地址和MAC地址,将其添加到各自的ARP高速缓存表中。而对于B来说,作为请求的对象,还会对ARP请求做出响应。它会返回一个单播响应包,其中包含了B的IP地址和MAC地址。当A收到这个响应后,将B的IP地址和MAC地址的映射关系存储在ARP高速缓存表中。此时,A和B都有了对方的IP地址和MAC地址的映射关系,可以进行正常的数据通信。

特别要指出的是,当某主机要和一台不同网段的计算机通信时,则将数据包交由网关(或路由器)转发,于是此主机要通过ARP协议请求网关的MAC地址,在获得了正确的网关的MAC地址后,将数据投递到网关,由网关进行转发,才可能完成跨网段的通信。

在计算机上,使用arp–a命令,可以查看本机的ARP地址映射表。如下:

2. ARP欺骗的过程解析

通过对ARP工作机制的分析可以发现,以太网上很容易实现ARP欺骗:然而在以太网中工作的计算机,并不对它所接收的数据包中的源MAC地址的真实性检查,因此计算机上很有可能存储伪造的某IP的MAC地址;其次,ARP缓存表总是保留最新收到的IP和MAC地址的映射关系,当计算机接收到一个新的ARP应答数据包的时候,就会对本地的ARP缓存进行更新。所以,一旦有计算机向网络中广播虚假的IP地址和MAC地址的映射关系时,网络中的其他计算机都会刷新本地主机的ARP高速缓存表,记录错误的MAC地址。由于局域网的通信就是按照MAC地址进行传输,所以,被欺骗的计算机就产生了通信故障。

例如:假设局域网中有计算机A要与B通信,而C是一个发送ARP欺骗的攻击者,而它们的IP地址及MAC地址如表一所示:

正常情况下,A和B都在ARP缓存中记录对方的IP和MAC。然而假设此时有计算机C在网络中发送ARP响应数据包,将IP_A映射MAC_C作为ARP响应,那么B收到此ARP响应后就会刷新ARP缓存表,将表中的IP_A所对应的MAC地址修改为MAC_C;同样的方法,也可以使得A刷新ARP缓存表,将IP_B所对应的MAC地址修改为MAC_C。此时,C就成功的“欺骗”了A和B,而A和B彼此通信的数据最终都会被发送到C,它们之间就无法正常通信了。

(二)ARP欺骗对局域网的危害

从上面的分析可以看出,ARP欺骗可以攻击局域网内任何一台没有防范的计算机或网络设备。在实际的情况中,ARP欺骗通常有两种表现形式:一种是对网关(路由器)的ARP欺骗;另一种是对内网计算机的ARP欺骗。

对网关(路由器)的ARP欺骗主要方法是:欺骗者不断的向路由器发送大量ARP响应数据包,而这些数据包伪造了一系列对应与内网IP的MAC地址,当欺骗者不断发送这些伪造的数据包时,真实的ARP映射信息无法通过更新保存在路由器中,于是路由器转发的数据只能发送给错误的MAC地址,造成PC无法正常收到信息。

对内网计算机的ARP欺骗主要方法是:欺骗者伪造网关的MAC地址,并向内网计算机发送伪造的ARP响应数据包,使得内网的计算机在ARP缓存中记录的不是正确网关的MAC地址,从而导致内网计算机普遍“断网”。在园区网络中,以此类ARP欺骗最常见,影响也最严重。

ARP欺骗攻击的后果非常严重,它可能使得用户访问时断时续,甚至是造成大面积掉线。此外,由于ARP欺骗可以使得原本要发送到目的计算机的数据被发送到其他计算机,因此在ARP欺骗中,可以让上网主机的流量必须经过欺骗者的主机,其他主机原来直接通过交换机上网现在转由通过欺骗者主机上网。如果结合使用抓包分析工具,欺骗者利用一些嗅探工具和抓包工具监视到被欺骗主机的明文密码以及访问信息。这是十分危险的,欺骗者接到了数据时,它再提交给网关。这样的方法可以截获以明文传输的信息,盗取未经加密传输的用户名和口令

(三)ARP欺骗的检测

1. 在局域网内使用抓包软件进行抓包分析

抓包软件很多,如sniffer, Ethereal, Windump等。以检测网络中是否存在对计算机的ARP欺骗为例,可以在网络中的某台计算机上安装sniffer,抓一个源IP地址为网关的ARP响应包进行分析,如果此ARP响应分组包中所对应的MAC地址不是网关真实的MAC地址,那么网络中就存在着ARP欺骗。这种检测方法简单易行,而且误判率小。

2. 在三层交换机中查看ARP表:

查看作为网关的三层交换机的ARP缓存表,如果ARP表中存在一个MAC对应多个端口,或者发现关于某计算机的ARP映射关系明显与真实情况不符,则也表明网络中存在ARP欺骗攻击。然而这种检测方法仅合适于有网络管理权限的管理员,普通用户无法操作。

3. 对比查看本地ARP表:

对于网络上的计算机,在可以正常访问网络的情况下,用“arp–a”命令查看本地的ARP表,并记录网关所对应的MAC地址;在网络出现故障时,再次用“arp–a”命令查看本地的ARP表。如果此时网关所对应的MAC地址和之间所记录的MAC地址不同,此计算机则是受到了ARP欺骗攻击,而此时网关所对应的新的MAC地址,就是发送ARP欺骗的计算机的网卡MAC地址。

(四)ARP欺骗的防范措施

1. 在主机上静态绑定的网关的IP和MAC地址

针对ARP攻击对象为局域网上的计算机的欺骗,可以在用户端的计算机上静态绑定网关MAC,以防止主机刷新ARP缓存。方法如下:建立一个开机自动运行的批处理文件,清空本地ARP列表,并加入这样一条绑定静态ARP表的命令:“arp–s网关的IP地址网关的MAC地址”。例如:

这种做法在ARP缓存表中静态绑定了网关的正确的MAC,使得它不被ARP欺骗包刷新,达到了防制的效果,非常简单易行,一般用户都可以用此方法来解决ARP欺骗的问题。

2. 架设ARP服务器

局域网内架设ARP服务器的做法是:管理员先记录网络中的网关和所有主机的IP地址以及MAC地址,然后在ARP服务器上预先配置这些IP和MAC的映射关系。当ARP服务器收到ARP请求时就立即发送正确的ARP响应,用来协助主机响应局域网内的所有ARP请求。此外,还可以设置此ARP服务器定时在网络中广播发送正确的ARP响应信息,来保证局域网内的计算机时刻有一个正确的ARP缓存表。让网络设备和主机发送大量的正确A R P信息,和欺骗信息抢夺网络资源。这是一种常见的解决方案,但由于存在无法彻底根除,会造成大量垃圾流量的问题,现已很少使用。

3. 用接入层交换机防止ARP欺骗

许多交换机都有了IP+MAC+端口绑定的功能。在接入层交换机的端口上绑定了主机的IP和MAC对应关系后,仅有正常的数据包可以通过主机所在的端口,仿冒其它设备的ARP欺骗报文则无法通过,也就不能通过MAC地址的替换来达到攻击的目的。

4. 使用安全工具软件

除了以上防止ARP欺骗的方法以外,计算机还应当及时安装具有防止ARP攻击功能的安全工具,例如Anti ARP Sniffer、360安全卫士、瑞星防火墙等,此外还可以利用木马杀客等安全工具查杀ARP木马。

(五)结语

ARP欺骗的存在严重影响局域网的稳定和安全,虽然在目前的网络中还不能从根本上消除ARP欺骗,但只要能做到经常检查网络状态,对网络进行检测、监控,采取积极主动的防御行动,一定能在很大程度上保证网络的安全和畅通。

摘要:ARP欺骗给当前许多园区网络通信带来了严重影响。文章讨论了ARP的工作原理, 结合分析局域网中计算机通信的具体过程, 阐明了ARP欺骗的原理和对局域网造成的危害。并针对这种攻击原理, 总结了检测以及防范ARP欺骗的若干方法。

关键词:ARP欺骗,ARP欺骗的检测,防范措施

参考文献

[1]杨延朋.校园网络ARP协议欺骗的检测与防御[J].鞍山科技大学学报, 2007, 30 (2) .

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

上一篇:欺骗技术 下一篇:局域网中的ARP欺骗