[摘 要] 目前利用tcp/ip协议安全漏洞进行欺骗攻击的事件经常发生,攻击者利用arp欺骗进行拒绝服务攻击(dos)或中间人攻击,造成 网络 通信中断或数据被截取和窜改,严重影响网络的安全。本文通过arp协议原理分析揭示arp协议欺骗,并对arp病毒攻击提出一套有效可行的防犯措施和解决办法。
[关键词] arp协议 arp欺骗 arp病毒
一、引言
arp欺骗具有隐蔽性、随机性的特点,在internet上随处可下载的arp欺骗工具使arp欺骗更加普遍。目前利用arp欺骗的木马病毒在局域网中广泛传播,给网络安全运行带来巨大隐患,是局域网安全的首要威胁。有时会出现网络设备完好,运转正常的情况下,局域网内用户上网速度缓慢甚至完全阻塞的情况,这种现象往往是由于局域网内遭到arp攻击引起的,一些带有arp欺骗功能的木马病毒,利用arp协议的缺陷,像大规模爆发的流行性感冒一样,造成网络时断时续,无法正常上网。同时清理和防范都比较困难,给不少的网络管理员造成了很多的困扰。
二、arp协议概述
arp协议全称为address resolution protocol,即地址解析协议,是tcp/ip协议栈中的基础协议之一,它工作于osi模型的第二层,在本层和硬件接口间进行联系, 同时为上层(网络层) 提供服务。是将ip地址与网络物理地址一一对应的协议,负责ip地址和网卡实际地址(mac)之间的转换。也就是将网络层地址解析为数据链路层的mac地址。在以太网中,一个网络设备要和另一个网络设备进行直接的通信,除了知道目标设备的ip地址外,还要知道目标设备的mac地址。arp协议的基本功能就是通过目标设备的ip地址,查询目标设备的mac地址,以保证通讯的顺利进行。当一个网络设备需要和另一个网络设备通信时,它首先把目标设备的ip地址与自己子网掩码进行“与”操作,以判断目标设备与自己是否位于同一网段内,如果目标设备与源设备在同一网段内,则源设备以第二层广播的形式(目标mac地址全为1)发送arp请求报文,在arp请求报文中包含了源设备与目标设备的ip地址。如果目标设备与源设备不在同一网段,则源设备首先把ip分组发向自己的缺省网关,由缺省网关对该分组进行转发。
三、arp协议的缺陷
1.主机arp列表是基于高速缓存动态更新的。由于正常的主机间的mac地址刷新都是有时限的,这样恶意用户如果在下次交换之前成功地修改了被欺骗机器上的地址缓存,就可以进行假冒或拒绝服务攻击。
2.可以随意发送arp应答分组。由于arp协议是无状态的,任何主机即使在没有请求的时候也可以做出应答。因此任何时候发送arp应答。只要应答分组是有效的,接收到arp应答分组的主机就无条件地根据应答分组的内容刷新本机高速缓存。
四、arp的主要攻击类型
arp期骗是指利用arp协议的漏洞,通过向目标设备主机发送虚假的arp报文,达到监听或者截获目标主机数据的攻击手段。主要攻击类型:冒充主机欺骗网关(对路由器arp表的欺骗)、冒充网关欺骗主机(对内网pc的网关欺骗)。
1.冒充主机欺骗网关
攻击主机c发出一个报文,其中源mac地址为mac c,源ip地址为ip a。这样任何发往主机a的报文都会被发往攻击主机c。网关无法与真实主机a直接通信。假如攻击主机不断地利用自己的真实mac地址和其他主机的ip地址作为源地址发送arp包,则网关无法与网段内的任何主机(攻击主机c除外),进行直接通信。然而,这种情况下,交换机是不会产生任何报警日志的,原因在于,多个ip地址对应一个mac地址在交换机看来是正常的,不会影响其通过ip所对应的mac来交付报文。
如果攻击者将网关arp缓存中的mac地址全部改为根本就不存在的地址,那么网关向外发送的所有以太网数据帧会丢失,使得上层应用忙于处理这种异常而无法响应外来请求,也就导致网关产生拒绝服务(不能响应外界请求,不能对外提供服务)。
2.冒充网关欺骗主机
(1)在主动攻击中,攻击者c主动向a发送arp 应答数据包,告诉a,b(网关)的ip地址所对应的mac地址是cc-cc-cc-cc-cc-cc,从而使得a修改自己的arp列表,把b的ip地址对应的mac地址修改为攻击者c的mac地址。
(2)同时,攻击者c 也主动向b发送arp应答数据包,告诉b,a的ip地址所对应的mac 地址是cc-cc-cc-cc-cc-cc,从而使得b修改自己的arp列表,把a的ip地址对应的mac地址修改为攻击者c的mac 地址。
(3)从而使得a←→b 之间的通信形式变成a←→c←→b,实现了中间人攻击。
在被动攻击中,攻击者c只在a或者b发送arp请求数据包时,延时一段时间发送应答数据包,使得自己的应答包在正确的应答包之后到达,防止自己修改的相应主机的arp 列表被正确的应答包再次修改。
那么主机a发往网关b的报文都会被发往攻击主机c,造成主机a突然断网。如果攻击主机向网关b转发了来自主机a的报文,那么主机a能通过攻击主机c继续上网,但其上网质量完全取决于攻击主机c,通常表现为时断时续。
例如,网络上有3台主机,有如下的信息:
主机名 ip地址 硬件地址
a 202.206.208.1aa:aa
b 202.206.208.2 bb:bb
c 202.206.208.3 cc:cc
这三台主机中,c是一台被入侵者控制了的主机,而a信任b,入侵者的目的就是要伪装成b获得a的信任,以便获得一些无法直接获得的信息等。
四、 arp欺骗防范和解决方案
1.手动防御
防御arp欺骗的简单方法是网络管理员分别在主机和路由器上静态绑定 地址映射。这种方法非常有效,但仅适用于小规模的局域网,而且这种方法不适用于dhcp自动分配地址的情况,也不能适应网络的动态变化。对于大型动态ip的网络,建立dhcp服务器(建议建在网关上)。所有客户机的ip地址及其相应主机信息,只能由网关这里取得,网关开通dhcp服务,保持网内的机器ip/mac一一对应的关系。在由dhcp服务器构成的动态分配主机ip的环境中,主机申请ip时的mac地址和ip地址是一一配对的,也是唯一的,上述的攻击主机c也不能例外,不可能利用一个mac地址申请到多个ip地址,更不可能申请到网关地址。同时,网关机器关闭arp动态刷新的过程,使用静态路由,这样的话,即使犯罪嫌疑人使用arp欺骗攻击网关的话,这样对网关也是没有用的,确保主机安全,即可防御冒充主机欺骗网关的arp欺骗。
另一方面通过arp-s命令,在pc上绑定网关的mac和ip地址,这样可以防御冒充网关欺骗主机的arp欺骗。
另一种有效的手动防御方法是在局域网中增加vlan的数目,减少vlan中的主机数量。局域网管理员可以根据本单位的网络拓扑结构划分若干个vlan,这样既能够在发生arp攻击时减少所影响的网络范围,又能够在发生arp攻击时便于定位出现的网段和具体的主机。缺点同样是增加了网络维护的复杂度,也无法自动适应网络的动态变化。
2.使用arp服务器
在局域网内部的设置一台机器作为asp服务器,专门保存并且维护网络内的所有主机的ip地址与mac地址映射记录,使其他 计算 机的arp配置只接受来自arp服务器的arp响应。当有arp请求时该服务器通过查阅自己缓存的静态记录并以被查询主机的名义响应arp局域网内部的请求,从而防止了arp欺骗攻击的发生。但是这个方法也有不足,首先要保证arp服务器不被攻击,确保arp服务器的安全;其次要保证主机只接受指定arp服务器的arp响应报文。如何做到这一点,目前还是比较困难的。
欺骗的解决措施
以上只是对arp欺骗的防御手段,但对于局域网中已经有机器中了arp欺骗木马,伪造网关,则可采用以下方法解决。
判断攻击机的ip地址
某 计算 机所处网段的路由ip地址为.1,本机地址为.8,在计算机上dos命令行中运行arp-a后输出如下:
c:\documents and settings\administrator>arp-a
interface:.8---0x10003
internet address physical addresstype
.100-01-02-03-04-05dynamic
其中,00-01-02-03-04-05就是路由器.1对应的mac地址,类型为动态,因此可被改变。正常情况下,.1和00-01-02-03-04-05始终对应。被攻击后,重复使用该命令查看,就会发现该mac已经被替换成攻击机器的mac,而且攻击机器的mac地址和真正的网关mac地址会出现交替现象,如
c:\documents and settings\administrator>arp-a
interface:.8---0x10003
internet address physical addresstype
.100-01-02-03-04-05dynamic
.600-01-02-03-04-05dynamic
由此可判断.6的计算机就是攻击机,接下来就要判断攻击机的mac地址并对连接该主机端口进行定位,定位操作主要通过snmp协议完成。最后关闭交换机上受病毒感染的端口并对通过端口查出的相应用户进行彻底查杀。当然也可以直接下载arp欺骗检测工具,如arp checker可以有效的定位到发起arp欺骗的主机。
五、结论
通过以上几种方法来解决arp病毒对于局域网的欺骗攻击是比较有效果的。但是由于arp病毒版本在不断更新升级中,所以仍会给局域网用户带来新的冲击与危害。因此有必要提前做好局域网arp病毒的防范工作,使得arp病毒的危害减少到最小程度。当然,在 网络 安全领域,没有任何一种技术手段可以解决所有的问题,对于各种类型的网络攻击,经常查看当前的网络状态,对网络活动进行分析、监控、采取积极、主动的防御行动是保证网络安全和畅通的重要方法。网络管理员应当密切检查网络,不断提高自身的技术水平,确保网络安全的正常运行。
参考 文献 :
[1]张胜伟:基于dai的arp欺骗深度防御[j].计算机安全, 2009,(01)
[2]李 新:arp欺骗防御技术的研究[j].商场 现代 化,2008(36)
[3]陈天洲 陈 纯 谷小妮等:计算机安全策略[m].浙江大学学报,2004年
本文链接:http://www.qk112.com/lwfw/jsjlw/txlw/262301.html