ARP欺骗的解决办法论文

2023-01-14

ARP欺骗具有隐蔽性、随机性的特点, 在Internet上随处可下载的ARP欺骗工具使ARP欺骗更加普遍。攻击者可以利用ARP欺骗进行拒绝服务攻击 (Do S) 或中间人攻击, 造成网络通信中断或数据被截取和窜改, 严重影响网络的安全。目前利用ARP欺骗的木马病毒在局域网中广泛传播, 给网络安全运行带来巨大隐患, 是局域网安全的首要威胁。如何有效地监测和防范ARP欺骗攻击成为当前网络管理者所面临的严峻挑战。由于ARP欺骗问题的严重性, 研究者已经提出许多针对ARP欺骗的安全防范技术。

1 ARP欺骗原理

A R P协议即地址解析协议 (a d d r e s s resolution protocol) , 是网络层中的一个重要协议。地址解析是指在IP地址和采用不同网络技术的硬件地址之间提供的动态映射。A R P协议是建立在信任局域网内所有节点的基础上, 虽然高效却并不安全。ARP协议是一种无状态的协议, 它不会检查自己是否发过请求报文, 也不管 (其实也不知道) 是否是合法应答, 只要接收到目标MAC是自己的ARP广播报文, 都会接收并更新缓存, 这就为ARP欺骗提供了可能。

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

2 ARP欺骗的防御技术与解决办法

2.1 ARP欺骗监测技术

2.1.1 手动监测

网络管理员可以通过命令查看主机的ARP表或路由器ARP表, 也可以利用Ethereal等Sniffer工具进行抓包, 发现可疑的〈IP, MAC〉地址映射, 分析可能存在的ARP欺骗并判断欺骗类型。例如当利用命令查看路由器ARP表时发现有多个IP地址对应一个MAC的现象, 这就说明该局域网内存在欺骗网关类型的A R P欺骗。

2.1.2 动态监测

它可以分为被动监测和主动监测两种。例如ARPWatch和ARP-Guard属于被动监测, 仅监测网络中是否存在ARP欺骗, 并不主动向外发送A R P报文;A R P防火墙则属于主动监测, 在监测网络是否存在ARP欺骗的同时, 还主动向外发送A R P报文, 防止对本机进行ARP欺骗。ARP防火墙是一种安装在用户主机上的ARP欺骗监测软件, 能够动态监测局域网内针对本主机和针对网关的A R P欺骗。但是如果设置错误, 主动监测的ARP防火墙会向局域网内发送大量A R P报文, 造成A R P报文的广播风暴, 影响网络通信。因此ARP防火墙的应用具有两面性。

2.2 ARP欺骗防御技术

2.2.1 手动防御

防御ARP欺骗的简单方法是网络管理员分别在主机和路由器上静态绑定〈IP, MAC〉地址映射。这种方法非常有效, 但仅适用于小规模的局域网。随着网络规模的扩大, 即使有相关软件协助进行〈IP, MAC〉地址映射的绑定, 手动添加的方法也会使工作量迅速增加。而且这种方法不适用于DHCP自动分配地址的情况, 也不能适应网络的动态变化。另一种有效的手动防御方法是在局域网中增加V L A N的数目, 减少VLAN中的主机数量。这种方法能够缩小ARP欺骗影响的网络范围;缺点同样是增加了网络维护的复杂度, 也无法自动适应网络的动态变化。

2.2.2 动态防御

M A C伪装是A R P欺骗的一个变种。Port-Security是思科交换机支持的一种防御MAC伪装的技术。使能Port-Security的交换机端口只允许学习有限数量的MAC地址, 如果设置为1, 则只允许一个合法的主机连接网络, 伪装的MAC地址就无法通过交换机。这种方式对防御M A C伪装非常有效, 但不能解决其他类型的ARP欺骗问题。

(1) A R P欺骗监测。根据不同类型的ARP欺骗的表现特征, 分别采取端口镜像监听网络、报文分析、分析路由器日志和分析路由器ARP表等方法, 动态发现网络中可能存在的ARP欺骗。这种方法需要收集局域网内所有主机的IP和MAC地址, 这也由该软件自动采集完成, 克服了手动防御中需要手动绑定〈IP, MAC〉地址映射的缺点。 (2) ARP欺骗主机定位。在监测到ARP欺骗后, 首先需要确定发起ARP欺骗主机的MAC地址, 然后对连接该主机的交换机设备定位;最后再对连接该主机的交换机端口进行定位, 定位操作主要通过SNMP协议完成。 (3) 关闭该主机连接。在完成主机和交换机端口定位后, 利用SNMP协议关闭连接该主机的交换机端口, 并以邮件或网页的形式通知用户。动态的监测与防御系统可以根据ARP欺骗类型分别采取相应的监测方法, 对发起ARP欺骗的主机及时定位并断开连接, 准确率较高, 能够有效地避免ARP欺骗的扩散, 在一定程度上缓解了局域网内A R P欺骗的问题。但是该系统只是在监测到ARP欺骗之后进行处理, 不能从根本上解决ARP欺骗的问题。另外, 局域网中大规模爆发的ARP欺骗在系统监测到问题前就已经使网络不能正常通信, 影响系统的监测效果, 只能由网络管理员参与处理。

3 ARP欺骗避免技术

ARP欺骗是由于ARP协议的安全缺陷以及信任局域网内主机造成的。要彻底避免发生A R P欺骗, 必须对A R P协议进行改进, 增强其安全特性。为与上面总结的ARP欺骗防御技术相区别, 本文称之为ARP欺骗避免技术。

3.1 加密与认证技术

ARP协议建立在信任局域网内主机的基础上, 对ARP报文不作任何加密和认证, 这是ARP欺骗产生的重要原因。文献[2~5]分别提出利用加密认证技术来改进A R P协议, 通过对ARP报文进行认证避免发生AR P欺骗。Gouda等人[2]提出一种新的地址解析架构, 它包括一个安全服务器和两种新协议:邀请—接受和请求—应答。邀请—接受协议用于主机向安全服务器注册其〈IP, M AC〉地址映射;请求—应答协议用于主机向安全服务器请求局域网中其他主机的M AC地址。这种架构与标准的ARP协议不兼容, 且安全服务器存在单点故障问题。但是它为利用安全认证技术改进ARP协议提供了很好的借鉴。安全ARP协议 (S-ARP) 是由Brushi等人[3]于2003年提出的一种ARP协议改进方案。其主要思想是利用非对称加密技术来对ARP报文进行认证, 避免发生AR P欺骗。安全ARP协议需要在局域网中增加一个权威密钥分发服务器 (authoritative k ey distributor, AKD) , 用来保存局域网中每台主机的IP地址和公钥。运行安全ARP协议的主机需要连接到AKD服务器获取发送ARP报文主机的公钥, 对接收到的A R P报文进行验证, 同时主机缓存该公钥以提高运行效率。安全ARP协议只需在标准A R P报文的尾部增加一个认证字段用于携带发送主机的数字签名, 因此与ARP协议相兼容。安全A R P协议的优点是利用非对称加密技术验证A R P报文的合法性, 与A R P协议相兼容, 但仍存在AKD服务器单点故障和重放攻击等缺点, 而且安全ARP协议存在的认证过程影响了运行效率。文献[4]基于安全A R P协议的架构提出一种改进方案, 采用将数字签名与基于哈希链的一次性密码技术相结合的方法来验证ARP报文, 提高安全ARP协议的运行效率。票据ARP协议 (ticket-ARP) [5]是利用加密认证技术提出的另外一种改进方案。它通过在A R P消息中发布集中产生的〈IP, MAC〉地址映射证明 (称之为票据) , 实现ARP报文的验证。这些票据由一个本地票据代理 (local tickets a gent, LTA) 集中产生和标记, 发送主机在A RP报文中附加上票据以便接收者进行验证。对于TARP协议的详细工作过程请参考文献[5]。TARP协议与ARP协议兼容, 但与安全A R P协议一样, 也面临着L T A服务器单点故障和重放攻击的问题。

3.2 与DHCP协议相结合

还有一种与DHCP协议相结合的安全单播ARP (S-UARP) 协议, 将基于广播的安全ARP协议 (S-ARP) 改进成一种单播协议。当局域网内的一台主机想与其他主机通信时, 首先向支持安全单播ARP协议的DHCP服务器 (称之为DHCP+) 发送S-UARP请求报文, DHCP+服务器查找它所分配的〈IP, MAC〉地址映射, 发回相应的S-UARP应答报文;主机在收到应答报文后再向DHCP+服务器发送确认报文, 安全单播ARP协议采用类似三次握手的方式完成I P地址和MAC地址的解析。为支持安全单播ARP协议, DHCP代理也需要进行相应的修改。S-UARP协议的优点是改进的单播协议避免了A R P欺骗的发生, 减轻了局域网的A R P广播流量;缺点是为支持安全单播ARP协议, 不仅需要改变A R P协议, 还需要改进DHCP服务器和DHCP代理, 实现比较复杂。而且DHCP服务器也面临着许多安全问题, 首先需要保证DHCP服务器的安全。交换机首先进行DHCP snooping监听, 将主机从DHCP服务器获得的IP地址及其MAC地址保存到数据库 (或文件) 中, 在接收到ARP请求报文时取出报文中的源IP地址与数据库中的记录进行比较, 丢弃无效的ARP报文。D A I技术无须修改A R P协议和D H C P服务器, 但是需要部署支持DHCP snooping功能的交换机, 经济成本比较高。目前其他厂家的交换机也具有利用DHCP snooping技术来避免发生ARP欺骗的功能。

4 现有技术的比较

通过比较也可以看出, 常规的ARP欺骗监测和防御技术由于方法简单, 已经在局域网中得到应用, 但是效果并不明显, 不能从根本上避免A R P欺骗的发生。改进A R P协议的A R P欺骗避免技术则比较复杂, 应用需求也比较多, 其中基于中间件的方法需要修改系统内核, 对于已经部署的数量庞大的主机和网络设备来说采用这种方法并不现实;采用安全认证技术的方法需要在局域网中增加集中式的安全服务器, 这种方法具有一定的可行性, 但是目前还没有得到实用;与DHCP服务相结合的方法则需要DHCP服务器和交换机的支持, 由于这种方法得到了厂商的支持, 在一些局域网中已经得到了部分应用。A R P欺骗避免技术对于主机、交换机和服务器的需求都很高, 因此部署难度比较大, 仍然需要进一步的研究和改进。

5 结语

本文简要介绍了A R P协议的工作流程, 阐述了ARP欺骗产生的原理以及攻击形式, 并对已有的针对ARP欺骗的监测、防御与避免技术进行分类和总结;着重介绍了其工作原理和优缺点, 并提出研究改进ARP协议需要综合考虑的因素。下一步工作将重点研究改进ARP协议, 探讨可信任的安全局域网的设计与实现。

摘要:近年来, 大学校园网或多或少的会受到ARP欺骗的侵扰, 这在一定程度上干扰了正常的教学秩序和工作秩序。本文通过ARP协议原理分析揭示ARP协议欺骗, 并给出相应的防御措施及解决办法。

关键词:ARP,欺骗,防御

参考文献

[1] Ethereal a network protocol analyzer[EB/OL]. (200605) [2008-04-10].http://www.ethereal.com.

[2] GOUDA M G, HUANG C T.A secureaddress resolution protocol[J].ComputerNetworks, 2003, 41 (1) :57~71.

[3] BRUSCHI D, ORNAGHI A, ROSTI E.S-ARP:a secure address resolutionprotocol[C]//Proc of the 19th Com-puter Security Applications Conference.Washington DC:IEEE Computer Society, 2003:66~74.

[4] GOYAL V, ABRAHAM A.An effi-cient solution to the ARP cache poi-soning problem[C]//Proc of the 10thAustralasian Conference on Informa-tion Security and Privacy.Berlin:Springer, 2005:40~51.

[5] LOOTAHW, ENCKW, Mc DANIEL P.TARP:ticket-based address resolutionprotocol[C]//Proc of the 21stAnnualComputer Security Applications Conference.2005:106~116.

[6] 杨名川.利用华为交换机防止ARP欺骗[J].现代计算机, 2007 (2) :110~112.

[7] 陈伟斌, 薛芳, 任勤生.ARP欺骗攻击的整网解决方案研究[J].厦门大学学报:自然科学版, 2007, 46 (S-2) :100~103.

[8] 徐丹黎, 俊伟, 高传善.基于Ethernet的网络监听以及ARP欺骗[J].计算机应用与软件, 2005, 22 (11) :105~107.

[9] 吴小平, 周建中, 方晓惠.基于SNMP的ARP欺骗主动防御机制[J].华中师范大学学报:自然科学版, 2007, 41 (4) :512~514.

[10] 陈文波, 李善玺.针对ARP欺骗的动态检测防御系统[J].中国教育网络, 2007 (8) :76~77.

[11] 陈辉, 陶洋.基于Wincap实现对ARP欺骗的检测和恢复[J].计算机应用, 2004, 24 (10) :65~67, 85.

本文来自 99学术网(www.99xueshu.com),转载请保留网址和出处

上一篇:语言符号的任意性与非任意性论文下一篇:血液透析的护理操作规范化论文