目录:
1.补充完整通信过程
2.分析ARP报文中携带的内容
思考广播报文会带来哪些安全问题
一.通信过程
PC1与PC2进行通信
1.PC1先查找自身的ARP表项,看是否存在对端IP对应的MAC地址
如果存在则直接封装,如果不存在则需要发起ARP request报文进行解析
2.交换机收到ARP request报文,先根据SMAC学习MAC表项,然后由于该数据帧
是一个广播帧,所以执行泛洪
3.PC2,PC3,PC4都收到了该ARP request报文,PC2,PC3,PC4先进行ARP表项的学习。由于该数据帧是一个广播帧,因此PC2,PC3和PC4都要进行解封装的处理
交换机收到PC1的发来的的请求包并发送给PC2
PC2收到请求包并回复PC1的询问
交换机收到PC2的回复,并将请求包发送回PC1
PC1收到应答包
PC1获取应答包(此时PC1和PC2就通讯完成了)
文章来源地址https://www.toymoban.com/news/detail-646438.html
分析ARP报文中携带的内容
(一)ARP报文格式如图:
字段1:ARP请求的目的以太网地址,全1时,代表广播地址。
字段2:发送ARP请求的以太网地址。
字段3:以太网帧类型表示后面的数据类型,ARP请求和ARP应答此字段为:0x0806。
字段4:硬件地址类型,硬件地址不止以太网一种,是以太网类型时,值为1。
字段5:表示要映射的协议地址的类型,要对IPv4地址进行映射,此值为0x0800。
字段6和7:表示硬件地址长度和协议地址长度,MAC地址占6字节,IP地址占4字节。
字段8:是操作类型字段,值为1,表示进行ARP请求;值为2,表示进行ARP应答;值为3,表示进行RARP请求;值为4,表示进行RARP应答。
字段9:是发送端ARP请求或应答的硬件地址,这里是以太网地址,和字段2相同。
字段10:是发送ARP请求或应答的IP地址。
字段11和12:是目的端的硬件地址和IP地址。
(二)ARP的作用
要了解ARP的作用,首先要分清两个“地址”:
(1)TCP/IP的32bit IP地址。仅知道主机的IP地址不能让内核发送数据帧给主机。
(2)网络接口的硬件地址,它是一个48bit的值,用来标识不同的以太网或令牌环网络接口。在硬件层次上,进行数据交换必须有正确的接口地址,内核必须知道目的端的硬件地址才能发送数据。
简言之,就是在以太网中,一台主机要把数据帧发送到同一局域网上的另一台主机时,设备驱动程序必须知道以太网地址才能发送数据。而我们只知道IP地址,这时就需要采用ARP协议将IP地址映射为以太网地址。
要注意一点,一般认为ARP协议只使适用于局域网。
思考广播报文会带来哪些安全问题
(一)遭受ARP欺骗攻击
ARP欺骗的运作原理是由攻击者发送假的ARP数据包到网上,尤其是送到网关上。其目的是要让送至特定的IP地址的流量被错误送到攻击者所取代的地方。因此攻击者可将这些流量另行转送到真正的网关(被动式数据包嗅探,passive sniffing)或是篡改后再转送(中间人攻击,man-in-the-middle attack)。攻击者亦可将ARP数据包导到不存在的MAC地址以达到阻断服务攻击的效果,例如netcut软件。
遭受泛洪攻击
在通信工程中,洪泛(Flooding,也叫泛洪),是指交换机和网桥使用的一种数据流传递技术,将从某个接口收到的数据流向除该接口之外的所有接口发送出去,它不要求维护网络的拓扑结构和相关的路由计算,仅要求接收到信息的节点以广播方式转发数据包,直到数据传送至目标节点或者数据设定的生存期限(TTL,Time To Live)为0为止。
泛洪的过程一般指交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的映射,并将其写入MAC地址表中。交换机将数据帧中的目的MAC地址同已建立的MAC地址表进行比较,以决定由哪个端口进行转发。如数据帧中的目的MAC地址不在MAC地址表中,则向所有端口转发。
泛洪攻击的种类
由于洪泛是从某个接口收到的数据流向除该接口之外的所有接口,于是攻击者就可以通过对网络资源发送过量数据时就发生了洪水攻击,这个网络资源可以是router,switch,host,application等。常见的泛洪攻击种类分为,SYN、DHC以及ARP报文泛洪攻击。
SYN攻击利用TCP协议的特性,也就是三次握手机制,攻击者利用伪造ip地址发送TCP SYN(SYN即TCP三次握手的第一个数据包),当服务器返回ACK后,该攻击者不对之进行确认,该TCP链接则处于挂起状态,则半链接状态,服务器收不到确认信息,则会重复发送ACK,这样就能起到消耗服务器资源的作用,当攻击者发生大量该类TCP链接时,服务器由于无法完成三次握手持续消耗CPU和内存最终导致死机,不过该方法可以通过路由器的TCP拦截功能进行保护。
DHCP报文泛洪攻击,用户恶意利用工具伪造大量DHCP报文发送到服务器,恶意耗尽了IP资源,阻挡正常用户无法获得IP,另一方面,如果交换机上开启了DHCP Snooping功能,会将接收到的DHCP报文上送到CPU,因此大量的DHCP报文攻击设备会使DHCP服务器高负荷运行,甚至会导致设备瘫痪,当然服务器一端的协议栈会留一块缓冲区来处理“握手”过程中的信息交换,但是大量半连接挂起足以耗尽服务器资源。
ARP报文泛洪类似DHCP泛洪,同样是恶意用户发出大量的ARP报文,造成设备的ARP表项溢出,影响正常用户的转发。
泛洪攻击的攻击方法
除了以前攻击种类,攻击方法还包括,ICMP泛洪,ICMP反射泛洪,TCP LAND,UDP FLOOD死亡之ping,MAC泛洪以及DDOS和最后应用程序泛洪等。
ICMP泛洪(ICMP flood),用户利用ICMP报文进行攻击,攻击者向目标主机发 送大量的ICMP ECHO报文产生ICMP泛洪,主机由于需要处理大量该类报文导致时间资源被大量占用后无法处理正常请求,从而达到攻击的手法。
ICMP泛洪,Smurf IP利用广播地址发送ICMP包,一旦广播被该区域内主机回应,这些发包都会回应给伪装IP地址,而伪装IP地址可以为任何地址,黑客若是不停发送该类发包,就会造成Dos攻击。
TCP LAND攻击,都是通过发送请求连接的TCP SYN报文而实现对目标主机的攻击,但是不同的是,LAND发送的是经过精心构造的欺骗数据包,且源IP地址和目的IP地址是相同的,由于发送地ip与接收IP都是自己,因为这个ACK 报文就会出现发送给自己的现象,致使缺乏相应防护机制的目标设备瘫痪,该方法早在1997年被人以“m3lt”的名称提出,后在Windows Server 2003、Windows XP SP2等操作系统中重现。
UDP FLOOD泛洪原理与ICMP类似,只不过发送的是UDP报文。
死亡之ping则利用的是早期路由器对包的最大尺寸限制,通过操作系统对TCP/IP栈的实现为ICMP包上规定64KB的上限限制,通过超过上限导致出现,内存分配错误,导致TCP/IP堆栈崩溃,致使接受方宕机。
MAC泛洪发生在OSI第二层,攻击者进入LAN内,将假冒源MAC地址和目的MAC地址将数据帧发送到以太网上导致交换机的内容可寻址存储器(CAM)满掉,然后交换机失去转发功能,导致攻击者可以像在共享式以太网上对某些帧进行嗅探,这种攻击可以通过端口安全技术方式,比如端口和MAC地址绑定。
DDos发生在OSI第三、四层,攻击侵入许多因特网上的系统,将DDos控制软件安装进去,然后这些系统再去感染其它系统,通过这些代理,攻击者将攻击指令发送给DDos控制软件,然后这个系统就去控制下面的代理系统去对某个IP地址发送大量假冒的网络流量,然后受攻击者的网络将被这些假的流量所占据就无法为他们的正常用户提供服务了。
最后应用程序泛洪发生在OSI第七层,目的是消耗应用程序或系统资源,比较常见的应用程序泛洪是垃圾邮件,但一般无法产生严重的结果。。文章来源:https://www.toymoban.com/news/detail-646438.html
到了这里,关于通讯工程——ARP欺骗+泛洪攻击的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!