77范文网 - 专业文章范例文档资料分享平台

毕业论文 ARP防火墙技术的研究(4)

来源:网络收集 时间:2020-05-12 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

址 长 发送方 IP 地址 目的硬件地址 长 长 变发送方的 IP 地址 变目的主机的硬件地址 变目的 IP 地址 长 目的主机的 IP 地址 当 ARP 数据包构造完成后,将其向下传递到数据链路层,然后发送出去。整个ARP 数据包作为有效载荷在网络中传输。由于地址字段的信息是变长的,因此整个ARP 数据包的大小是可变的。但其实一个完整的ARP 数据包是非常小的。

2.2.4 ARP 缓存

ARP 协议是一种动态地址解析协议,也就是说每进行一次地址解析都要求在网络上互换地址信息。虽说ARP 信息包并不大,但如果每一个IP 数据包在网络上的每一跳都这样做,网络上的压力将会达到无法预料的大。那么,相对于简单的直接映射来说,这种方法既耗费资源又浪费时间。总的来说,ARP 请求信息包发送出去后,网络上的每台主机都要把接收到的信息与自己比较一下,看是否与之匹配。

动态地址解析方法效率问题的总体解决方案就是引入地址缓存。另外,为了降低网络交通的压力,地址缓存也保证了地址解析所耗费的时间非常少。这也是地址缓存功能从一开始就被写入ARP 协议的重要原因。

ARP 缓存以表的形式保存映射的IP 地址与MAC 地址对,网络中的每个设备管理其自己的ARP 缓存表。有两种方式向ARP 缓存表中写入数据:

(1)静态ARP 缓存:在进行动态解析时人工向ARP 缓存表中添加记录信息,并在缓存中永久保存。静态记录一般由ARP 管理软件进行管理。

(2)动态ARP 缓存:该方式在经过ARP 地址解析后,IP 地址与MAC 地址对由软件自动填写入ARP 地址缓存中。他们在ARP 地址缓存中仅保存一段时间,之后便从中删除。

一个设备的 ARP 缓存中包括动态和静态的记录,每种记录方式都有其优点与缺点。但在大多数情况下使用动态ARP 缓存记录,因为它是自动添加,而且不会牵涉管理员的经历。

在规范网络中,静态 ARP 缓存记录得到很好的应用,但这种方法的缺点就是需要人工添加记录,并

16

且一旦MAC 地址或IP 地址有变更需要人工修改。每条静态记录都会占据缓存表的空间,因此,缓存表中静态记录数量有限,不能使用太多静态记录。

动态记录是自动添加进缓存的,不需要人工添加和人工服务。但动态记录不可能永远保存在缓存中,因为随着网络情况的变化,保存在缓存中的静态记录会因无效而失去作用。

假设主机 A 的ARP 缓存中保存着另一网络主机B 的动态映射,如果动态记录永远保存在缓存表中,下列情况就会发生:

(1)主机的硬件发生改变:若主机B 更换了网卡,由于记录中的MAC 地址不会再出现,主机A 的ARP 缓存中保存的动态映射信息变为无效。

(2)主机的IP 地址发生改变:如果设备B 的IP 地址发生了改变,保存在设备A 中的映射记录也会变为无效。

(3)设备被移除:如果设备B 从网络中移除,设备A 不需要再向它发送信息,但映射记录仍旧保存在设备A 的地址缓存中,这样不仅浪费缓存空间,而且还会在设备A 查询缓存表时耗费时间。

为了避免这些问题的出现,将动态地址记录设置一定的生存周期,一般为10 分钟或20 分钟。规定时间过后,记录自动从缓存中删除,下次再通信就需要刷新缓存。相对于静态记录,这种方法在效率上仅存在微乎其微的差距,每10分钟或20 分钟发送两个28 字节的信息对网络几乎没有任何影响。

如果主机 A 初次开始地址解析时发送一个标准的ARP 申请,在网络中每个接收到申请信息的主机都需要刷新自己的ARP 缓存记录。然而,第三方设备不必为设备A 创建新的缓存记录。

从对主机 A 进行地址解析的角度来说,为主机A 创建新的缓存记录可以为以后的通信提供方便,但这意味着网络中所有设备的ARP 缓存表会很快被其他主机的地址解析信息填满。有些主机可能会创建这样的缓存记录,但一定会把这些记录设置好有效期,以避免缓存表被填满。

2.2.5 代理 ARP

在同一网络中连接的设备通过ARP 协议进行通信。网络中的每台主机都可以向其他主机发送单播或广播信息。通常情况下,如果主机A 和主机B 被路由器分开,主机A 就不能与主机B 直接通信。他们会通过数据链路层先向路由器传输信息,根据IP 地址经过两跳到达主机B。

与一般情况不同的是,有些网络是由两个网络通过路由器连接组成的,两个网络具有相同的IP 地址段和子网掩码。也就是说,主机A 和主机B 在数据链路层分别处于不同的局域网,但却具有相同的IP 地址段。因此,当发送IP 数据包时,主机A 与主机B 都认为对方和自己处于同一个局域网。如果主机A 要向主机B 发送数据包,可它的地址缓存中并没有主机B 的MAC 地址,则主机A 只好进行地址解析。但实际

17

上主机B 与主机A 并不在同一个局域网中,连接两个网络的路由器并不会自动将主机A 的广播发给主机B 所在的网络,主机B 也不回接收到来自主机A 的请求,因此主机A 不会接到包含主机B 的MAC 地址的回复。

对这种情况所作的 ARP 的改进称作ARP 代理。架在两个局域网之间的路由器用来代表主机B 回复主机A 的广播,它告之主机A 的并不是主机B 的MAC地址,即主机A 不可能直接与主机B 通信。而路由器告诉主机A 的是路由器本身的MAC 地址。如果主机A 想与主机B 通信,主机A 先向路由器发送信息。反过来的过程也是一样的。路由器并不自动转发ARP 广播,它只作为一个ARP代理设备。

ARP 代理的优势就是允许通信双方可以处于不同的局域网。当它也有缺点,首先,它增加了复杂度。其次,如果两个有相同IP 地址段的网络中间出现多个路由器,那么问题就会升级。ARP 代理同样会带来潜在的安全问题。因此,ARP代理应该被重新规划设计,并尽可能在两个局域网中架设一个路由器。

2.3 ARP 欺骗 2.3.1 ARP 欺骗原理

当IP 数据报准备发送时,由数据链路层将它封装入以太网数据帧,然后才能在以太网中传送。然而在封装过程中,数据链路层并不知道以太网数据帧头中目的主机的MAC 地址。唯一的信息是IP 数据报头中的目的主机的IP 地址。为了找到与目的主机IP 地址相对应的MAC 地址,根据地址解析协议(ARP),源主机会以广播的形式发送一个ARP 请求以太网数据帧给以太网上的每一个主机。

ARP 请求数据帧中包含目的主机的IP 地址,只有具有此IP 地址的主机收到这份广播报文后,才会向源主机回送一个包含其MAC 地址的ARP 应答。并且为了尽量减少广播ARP 请求的次数,每个主机都有一个ARP 缓存,这个缓存存放了最近的IP 地址与MAC 地址之间的映射记录。主机每隔一定时间或者当收到ARP应答,就会用新的地址映射对更新ARP 缓存。因为ARP 是一个无状态协议,所以对于大多数操作系统来说,如果收到一个ARP 应答,它们不管自己是否在此之前曾经发出ARP 请求,都会更新自己的ARP 缓存。这就为系统安全留下了很大的隐患。ARP 欺骗的核心思想就是向目标主机发送伪造的ARP 应答,并使目标主机根据应答中伪造的IP 地址与MAC 地址之间的映射对,更新目标主机ARP 缓存。假设S 代表源主机,即将要被欺骗的主机;D 代表目的主机,源主机S 本来是向它发送数据的;A 代表攻击者主机,进行ARP 欺骗。假设主机A 已知主机D 的IP 地址,于是它暂时将自己的IP 地址改为主机D 的IP 地址。当源主机S 想要向主机D 发送数据时,假设目前其ARP 缓存中没有关于目的主机D 的记录,那么它首先在局域网中广播包含主机D 的IP 地址的ARP 请求。但此时攻击者主机A 具有与目的主机D 相同的IP 地址,于是分别来自攻击者主机A 与目的主机D的ARP 响应报文将相继到达源主机S。此时,攻击者主机A 是否能够欺骗成功就取决于源主机S 的操作系统处理重复ARP 响应报文的机制。不妨假设该机制总是用后到达的ARP 响应中的地

18

址对刷新缓存中的内容。那么如果攻击者主机A 控制自己的ARP 响应晚于目的主机D 的ARP 响应到达源主机S,源主机S 就会将如下伪造映射:将目的主机D 的IP 地址对应攻击者主机A 的MAC 地址,保存在自己的ARP 缓存中。在这个记录过期之前,凡是源主机S 发送给目的主机D 的数据实际上都将发送给攻击者主机A,而源主机S 却毫不察觉。或者攻击者主机A 在上述过程中,利用其它方法直接抑制来自目的主机D 的ARP 应答将是一个更有效的方法而不用依赖于不同操作系统的处理机制。进一步分析,攻击者主机A 可不依赖于上述过程,直接在底层伪造ARP 响应报文来达到同样的欺骗目的。

2.3.2 ARP 欺骗的攻击方式

ARP 攻击发生时,攻击者利用地址解析协议本身的运行机制发动攻击行为。包括进行对主机发动IP 冲突攻击、数据包轰炸,切断局域网上任何一台主机的网络连接等[9]。

ARP 欺骗的攻击方式有如下几种:

(1)中间人攻击:中间人攻击就是攻击者将自己插入两个目标主机通信路径之间,使它如同两个目标主机通信路径上的一个中继,这样攻击者就可以监听两个目标主机之间的通信。其过程如下:C 侵染目标主机A 与B 的ARP 缓存,使得当A 向B 发送数据时,使用的是B 的IP 地址与C 的MAC 地址,并且当B 向A 发送数据时,使用的是A 的IP 地址与C 的MAC 地址。因此,所有A 与B 之间的通信数据都将经过C,再由C 转发给它们。如果攻击者对一个目标主机与它所在的局域网的路由器实施中间人攻击,那么攻击者就可以窃取网络上与这个目标主机之间的全部通信数据,并且可以对数据进行窜改和伪造。但动态映射对存在过期的问题,而且主机A 与B 之间也会进行正常的ARP 数据包交互。要解决这个问题,主机C 可以选择比较小的时间间隔持续发送伪造的数据包,这样就可以使主机A 与B 之间的通信一直中断。

(2)IP 地址冲突[9]:主机发送更改的ARP 报文,将伪装的MAC 地址映射到目标主机的IP 地址,制造出局域网上有另一台主机与受害主机共享一个IP 地址的假象,系统会检测到两个不同的MAC 地址对应同一个IP 地址,由于违反了唯一性要求,出现了IP 地址冲突,受害主机会自动向用户弹出警告对话框。最终导致被攻击主机无法正常上网。

(3)拒绝服务攻击[8]:拒绝服务攻击就是使目标主机不能正常响应外部请求,从而不能对外提供服务的攻击方式。如果攻击者将目标主机ARP 缓存中的MAC地址全部改为根本就不存在的物理地址,那么目标主机向外发送的所有以太网数据帧会丢失,使得上层应用忙于处理这种异常而无法响应的外来请求,也就导致目标主机产生拒绝服务。

还有其他方式的拒绝服务攻击。拒绝服务攻击还会对本子网内所有的 ARP请求信息进行响应,应答的MAC 地址全部填写为本子网网关的MAC 地址,由于网关自身是具有IP 转发功能的,因此导致本子网内部

19

的任何数据通信都需要通过网关进行一次转发,加重网关负荷,会造成网关超负荷而崩溃或者等待队列过长,进而子网内部主机之间、子网内部与外部主机之间的通信连接全部失败或者收发数据超时。

如果某一子网内存在很多具有IP 转发功能的主机(如该子网内存在很多路由器或者提供NAT 服务的服务器),利用篡改ARP 缓冲的技术就可以实现多种形式的讯息洪泛(Message Flood)。例如某子网存在具有IP 转发功能的主机A、B 和C, 将主机A本地ARP 缓冲中默认网关对应的MAC地址篡改为B的MAC地址,再将B 本地ARP 缓冲中默认网关对应的MAC 地址篡改为C 的MAC 地址,这样A 与网关的数据通道就变成了A 先到B,然后再经过C,最后到达网关,如果A 的数据流量很大,则B 与C 也会有较高的负荷,并且在本子网内将会产生较之原来3 倍的数据流量,也就是说主机越多,随之产生的流量也成倍增加,从而形成讯息洪泛,导致整个子网的性能急剧降低。

一般交换网络采用的二层交换机自身维护的一个 ARP 缓冲,用于映射MAC地址对应的交换机端口号,这个缓冲中可容纳的映射条目数是有限的,如果不足够大,我们向其发送大量MAC 地址不重复的ARP 数据包,就有可能造成交换机拒绝服务,不能正常转发数据包。

(4)克隆攻击:通过修改网络接口的MAC 地址,攻击者首先对目标主机实施拒绝服务攻击,使其不能对外部做出任何反应。然后攻击者就可以将自己的IP地址与MAC 地址分别改为目标主机的IP 地址与MAC 地址,这样攻击者的主机就变成了与目标主机一样的副本。攻击者就可以对目标主机进一步实施各种非法攻击,窃取各种通信数据。

(5)ARP 应答畸形包攻击:如果我们自己精心构造一个小于正常ARP 报文大小的ARP 应答报文,由于目前的网络交换设备没有充分考虑到这种情况的出现,当网络上连续出现这种畸形报文达到一定数量的时候,交换机的MAC 缓存表就无法正常刷新,常用的操作系统对这种畸形报文暂时没有很好的处理方法,其严重后果就是导致整个局域网瘫痪。

(6) ARP 缓冲区溢出攻击:进行攻击的主机持续把伪造的MAC-IP 地址映射对发给受害主机,受害主机会耗费大量的系统资源去维护ARP 高速缓存。如果进一步采用分布式攻击,可以由一台进攻主机控制远端几台中间主机发动进攻,这样攻击可以取得更好的效果。

2.3.3 ARP 攻击的检测

当局域网内有某些用户遭受了ARP 欺骗攻击时,由于攻击端不断向被攻击者发送ARP 欺骗数据包,被攻击的主机会出现网络时断时续的现象。同时,被感染主机感染ARP 病毒后,也会向本网段内所有其他主机发送ARP 欺骗报文,谎称自己是这个网段的网关设备,让原本流向网关的数据流改道流向染毒主机,致使受害者虽然能构正常进行网络通讯,但信息却被窃取了。

20

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库毕业论文 ARP防火墙技术的研究(4)在线全文阅读。

毕业论文 ARP防火墙技术的研究(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1047730.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: