好学IT学院:IT信息技术分享交流平台
标签:安全  来源:IT专家网  作者:邹铮  发布时间:2010-04-18  ★★★加入收藏〗〖手机版
解析中间人攻击之一:ARP缓存中毒
摘要:本系列将讨论最常被使用的中间人攻击形式,包括ARP缓存中毒攻击(ARP Cache Poisoning)、DNS欺骗(DNS Spoofing)、HTTP会话劫持等。…

内容提示:本系列将讨论最常被使用的中间人攻击形式,包括ARP缓存中毒攻击(ARP Cache Poisoning)、DNS欺骗(DNS Spoofing)、HTTP会话劫持等。

导言

用于攻击个人以及企业的最常见的网络攻击方式就是中间人攻击(MITM)。作为一种主动窃听攻击方式,中间人攻击方式主要是通过与目标机器建立连接并在目标机器间传递信息来发动攻击。在这种情况下,用户会认为自己正在与另一名用户直接通信,而实际上,通过主机的通信流量正在对用户执行攻击。最终结果是,攻击主机不仅能截取重要信息,而且能够注入数据流来进一步控制受害用户。

在本系列文章中,我们将讨论最常被使用的中间人攻击形式,包括ARP缓存中毒攻击(ARP Cache Poisoning)、DNS欺骗(DNS Spoofing)、HTTP会话劫持等。在实际情况中,你会发现,大多数受害用户使用的都是windows系统,因此我们将详细分析运行不同版本的windows系统时中间人攻击的情况。

ARP缓存中毒

在本文中我们将主要探讨ARP缓存中毒,这也是现代中间人攻击中最早出现的攻击形式,ARP缓存中毒(有时也被称为ARP中毒路由)能够让与受害用户在相同子网的攻击者窃取用户的所有网络留恋。我们首先讨论这种攻击形式是因为,它是最容易执行的攻击形式,但也是最有效的攻击形式。

正常ARP通信

ARP协议的主要目的在于简化OSI模型第二层和第三层间地址的翻译。第二层(也就是数据链层)使用MAC地址,以便硬件设备可以在小范围内直接进行通信。第三层(也就是网络层)使用IP地址(最常见的形式)来创建连通世界各地用户的大规模网络。数据链层直接处理连接在一起的设备,而网络层处理那些直接以及间接连接的设备,每一层都有自己的地址形式,他们必须合作才能实现网络通信。正是由于这个原因,ARP与RFC826(以太网地址解析协议)一起被创建。

图1:ARP通信过程
  ARP运作实际上是围绕两个数据包进行的:ARP请求和ARP回复。请求和回复的目的在于确定与特定IP地址相关的硬件MAC地址,这样流量才能够在网络上找到目的地。请求数据包被发送给网络段上的每台设备并发出信息“我的IP地址是XX.XX.XX.XX,我的MAC地址是XX:XX:XX:XX:XX:XX,我需要将信息发送给这个IP地址XX.XX.XX.XX,但是我不知道它的硬件地址,请这个IP地址将其MAC地址回复给我?”回复会以ARP回复数据包的形式,并回复说“你好,传递设备,我就是你要找的IP地址XX.XX.XX.XX,我的MAC地址是XX:XX:XX:XX:XX:XX”,收到回复后,传递设备会更新其ARP缓存表,然后设备就可以与另一台设备进行通信。