摘 要    2
论述ARP欺骗产生的原因    3
一、ARP的工作机制    3
二、ARP的协议格式    4
三、ARP欺骗产生的原因    5
四、防范ARP欺骗的技术    6
总  结    6
参考文献    7
摘 要
网络的迅速发展,在给人类生活带来方便的同时,也对网络安全提出了更高的要求。网络协议安全是网络安全的重要环节,因此对网络协议的分析和利用越来越受到特别关注。互联网的发展很大程度上归功于TCP/IP协议运行的高效性和开放性,然而TCP/IP协议在实现过程中忽略了对网络安全方面的考虑,致使其存在着较多的安全隐患。ARP协议是TCP/IP协议中重要的一员,其功能主要是为局域网内网络设备提供IP地址向硬件地址的转化,其设计建立在局域网内网络设备之间相互信任的基础上,由此产生了许多ARP欺骗攻击方法。许多木马和病毒利用ARP协议这一设计上的漏洞在局域网内进行ARP欺骗攻击,给局域网的安全造成了严重威胁。为解决ARP欺骗给局域网带来的安全问题,目前已有许多学者在这方面做了有意义的探索与实践,尽管某些方案在实际项目的应用中已相对成熟,但在防御能力上仍存在着一定的局限性。 本文针对ARP的工作机制和ARP的协议格式来论述ARP欺骗产生的原因和介绍常见的ARP欺骗以及现有防御ARP欺骗的方法。
论述ARP欺骗产生的原因
一、ARP的工作机制
在数据链路层上识别主机的依据是物理地址,要想在两台主机之间传输数据就必须知道对方
的物理地址,对于以太网来说,就是以太网网卡的物理地址。而在网络层及以上的数据通信使用的主机的IP地址,所以当数据由高层协议到达数据链路层时,就需要将IP地址转化为物理地址。这个转化的过程实际上就是地址映射。地址解析协议(Address Resolution ProtocolARP)就是为这两种不同的地址形式提供映射,负责完成在IP地址及数据链路层地址之间的映射。如图1.1
1.1 ARP实现的过程
二、ARP的协议格式
ARP报文由一个帧的数据部分所携带,如图1.2所示。下面分别简述ARP分组中的各个字段的有关内容:
⑴以太网报头中的前两个字段是以太网的目的地址和源地址。目的地址为全1的特殊地址是广播地址。
⑵两个字节长的以太网帧类型表示后面数据的类型。对于ARP请求或应答来说,该字段的值为0x0806
⑶硬件类型字段表示硬件地址的类型。它的值为1即表示以太网的地址。协议类型字段表示要映射的协议地址类型,它的值为0x0800即表示IP地址。它的值与包含IP数据报的以太网数据帧中的类型字段的值相同。
⑷接下来的两个1字节的字段,硬件地址长度和协议地址长度分别指出硬件地址和协议地址的长度,以字节为单位。对于以太网上IP地址的ARP请求或应答来说,它们的值分别为64.
⑸操作字段指出四种操作类型,它们是ARP请求(值为1)、ARP请求(值为2)、RARP请求(值为3)和RARP应答(值为4)。这个字段是必需的,因为ARP请求和ARP应答的帧类型字段是相同的。
⑹接下来的四个字段是发送端的硬件地址、发送端的协议地址、目的端的硬件地址和目的端的协议地址。
以太网目的地
6
以太网源地址
6
帧类型
2
硬件类型2
协议类型
2
1
1
OP
2
发送端以太网地址
6
发送端IP地址
4
目的以太网地址
6
目的IP地址
4
以太网首部                                                28字节ARP请求/应答
对于一个ARP请求来说,除目的端硬件地址外所有其他的字段都有填充值。当系统收到一份目的端为本机的ARP请求报文后,它就把硬件地址填进去,然后用两个目的端地址分别替换两个发送端地址,并把操作字段置为2,最后把它发送回去。
三、ARP欺骗产生的原因
ARP(Address Resolution Protocol)的工作机制在以太网中传输的数据包是以太包,而以太包是依据其首部的MAC地址来进行寻址的。发送方必须知道目的主机的MAC地址才能向其发送数据。ARP协议的作用就在于把IP地址转换成物理地址。为避免频繁发送ARP包进行寻址,在实际的工作过程中,每台主机都有一个ARP缓存表,其中记录了最近一段时间内其它IP地址与其MAC地址的对应关系。如果本机想与某台主机通信,则首先在ARP缓存中查这台主机
IPMAC信息,若存在,则直接利用此MAC地址构造以太包;若不存在,则向网络上广播一个ARP请求包。目的主机收到此请求包后,发送一个ARP应答包。本机收到此应答包后,把相关信息记录在ARP缓存中,然后再进行发送。由此可见,ARP协议是有缺陷的。一台恶意的主机如果构造一个ARP欺骗包,源主机就无法分辨真假,由此产生了ARP欺骗。不难发现,ARP协议是建立在信任局域网内所有结点的基础上的,它很高效,但却很不安全。由ARPtcp ip协议的安全隐患的协议格式,我们知道它是一个无状态的协议,不会检查自己是否发过请求包,也不管是否是合法的应答,只要收到目标MAC是自己的ARP请求,都会接受并存入ARP缓存,这就为ARP欺骗提供了方便。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。