OSI堆栈安全:第2层——理解ARP的作用

日期: 2008-12-04 作者:Michael Gregg翻译:曾少宁 来源:TechTarget中国 英文

在OSI模型的第2层是数据链路层,该层提供了网络节点间的数据传输机制。该层重要的原因是它负责将数据分割成帧进行传输。在数据链路层上有许多值得我们探讨的不安全因素,但是其中最重要的是地址分辨协议(ARP)处理。 ARP是更适用于可信网络的。

它用于将已知IP地址解析到未知MAC地址。在处理数据包并传输到下层堆栈时,数据链路层负责将数据包分割成帧。如果网络层已经提供了IP地址,那么数据链路层就必须提供一个物理地址。这就是ARP的任务。

当两台主机需要进行通信时,它必须能够提供目标设备物理地址。如果最终的目标不是在本地,那么ARP还必须能够解析网关的MAC地址,这样数据帧才能恰当的寻址。 既然ARP是一……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

在OSI模型的第2层是数据链路层,该层提供了网络节点间的数据传输机制。该层重要的原因是它负责将数据分割成帧进行传输。在数据链路层上有许多值得我们探讨的不安全因素,但是其中最重要的是地址分辨协议(ARP)处理。

ARP是更适用于可信网络的。它用于将已知IP地址解析到未知MAC地址。在处理数据包并传输到下层堆栈时,数据链路层负责将数据包分割成帧。如果网络层已经提供了IP地址,那么数据链路层就必须提供一个物理地址。这就是ARP的任务。当两台主机需要进行通信时,它必须能够提供目标设备物理地址。如果最终的目标不是在本地,那么ARP还必须能够解析网关的MAC地址,这样数据帧才能恰当的寻址。

既然ARP是一个基于信任的协议,那为什么网络或软件安全工程师要关注这个问题呢?当初集线器广泛使用的时期,攻击者并不十分关心ARP程序。因为如果想要在LAN上拦截流量,攻击者所需要做的只是简单地启动一个嗅探器(Sniffer),如Wireshark。这就是所谓的消极嗅探。集线器会将所有流量转发到所有的端口,因此,攻击者只需要将他的网卡放置于混杂模式就可以了。

交换机改变了这种动态的攻击,因为目前很多网络都使用交换机。消极的嗅探为攻击者所提供的只是微乎其微的信息。他所看到的流量只是传输到他界面的单播流量或传输到所有端口的广播流量。这就意味着攻击者是被迫操作ARP程序的。如果他想看到其他用户的流量,那么他必须尝试积极嗅探。简单来说,积极嗅探要求攻击者在网络中加入封包,然后致使将他无法正常接收的流量发送到他的系统上。

攻击者有几种方式可以实现积极嗅探。第一种是ARP病毒。这包括欺骗一个主机,让它相信攻击者的主机IP地址属于网络上的另外一台主机。这种方式通常以发送不必要的ARP响应,以及侵占交换机的内容寻址存储器(CAM)和本地的其它系统上的ARP缓存。最常见的ARP病毒目标就是网关。如果攻击者能够观察到所有传输到网关的流量,那么密码、RTP、Telnet、e-commerce以及其他的敏感数据包都可以被嗅探到。

通过欺骗网关的IP地址,在攻击者主机所在子网上的所有主机都将路由经过他的系统。这种方法能够凑效,但是不是非常的隐密。它要求攻击者必须侵占他所在子网上所有主机的ARP缓存。对于攻击者来说,只侵占一个主机上的ARP缓存就隐密得多。有一些免费工具可以帮助攻击者实施这种攻击,包括:

  • Cain
  • Ettercap
  • WinARPAttacker

第二种积极嗅探方法是尝试使用ARP淹没来绕开交换机的功能,这种情况攻击者通过大量发送包含不同MAC地址的数据包时发生。这个做法的本质是淹没交换机的CAM。当一些交换机超负荷时,它们将进入类集线器模式。这时交换机会因为不堪重负而将所有流量广播到所有端口上。

不管使用哪种方法,它们都可能绕开交换机的安全保护机制。重要的是工程师们能够意识到这一点并且针对这些攻击开发出有效的应对措施。加密、安全协议和对网络异动的主动监控都可以帮助防御这一类型的攻击。此外,交换机本身还可以发挥更大的作用,很多现代的交换机提供检测技术,如动态ARP检测(DAI)。这种技术可以用以检查ARP数据包以及确保它们的有效性。DAI允许网络工程师们拦截、记录和摒除带有无效MAC地址的ARP数据包。这些简单的措施能够显著地减少攻击者在数据链路层成功加载攻击的能力。

关于作者:
Michael Gregg在IT和网络安全方面已经有15年的工作经验。他是风险评估和安全咨询公司Superior Solutions Inc的创始人和CTO。他已经开发了高水平的安全级别,并且著作了6本书,最近的一本是Hack the Stack: The Eight Layers of an Insecure Network。

作者

Michael Gregg
Michael Gregg

暂无

翻译

曾少宁
曾少宁

TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。

相关推荐

  • 在VLAN中可能遇到的攻击方式(一)

    VLAN建立在OSI的第二层数据链路层上,尽管OSI的每一层是独立的,如果某一层出现问题,也必将会影响到其它层的数据传递,本文介绍了VLAN面临的安全威胁。

  • 无线路由器免遭ARP攻击实用技巧

    面对无处不在的ARP攻击,无线路由也是受害者之一,那么如何避免无线路由器遭受ARP攻击?本文将做出详细解答。

  • OSI模型七层功能温习

    大多数的计算机网络都采用层次式结构,即将一个计算机网络分为若干层次,因为层次间的无关性,层次间的每个模块可以用一个新的模块取代,只要新的模块与……

  • 实战应对三种因素引起的交换故障

    随着工作时间的延长,以及网络应用的不断变化,交换机出现故障的机率也在逐渐增大,如何提高交换故障的解决效率,保证局域网网络能够始终高效运行呢?