ARP协议的安全缺陷
1、 太网帧格式
媒体访问控制(Media Access Control.MAC)地址,以太网节点的标记,相对于网卡而言就是网卡号
6字节 6字节 2字节 50-1500字节 4字节
目的MAC地址 源MAC地址 协议类型 数据 CRC校验
协议类型
ARP协议 0x0806
IP协议 0x0800
如果目的MAC地址六个字节全部位0xFF,则这个MAC地址为广播MAC地址。
以太网主机只接收和处理目的MAC地址为自己网卡号或者广播MAC地址的以太帧,其他的不作处理
2、ARP协议原理
在以太网上,主机A的IP地址为IPA,欲解析主机B的MAC地址。A首先广播一个ARP查询报文,请求IP地址为IPB的主机回答其物理地址,此ARP查询包同时带有主机A的MAC地址MA,此ARP包为以太网的广播帧,网上所有的主机都将收到该ARP请求。收到ARP查询包后,网上所有主机将其MAC地址缓冲区中的主机A的MAC地址更新为刚刚收到的ARP查询包中携带的地址MA,并将此ARP报文中要查询的IP地址(IPB)和自己的IP地址比较,只有这个IP地址和自己的主机的IP地址相同的主机,才能发送ARP应答包,显然,主机B收到这ARP请求包后作出回答:向A发回一个ARP应答包,回答自己的物理地址MB。为了提高效率,主机在查询主机B的ARP查询包中包含有主机A的MAC地址,这样主机B在应答主机A的的查询时,采用电对电的阿方式字节将ARP应答包发送给主机A,所以,ARP的查询包为广播包,而 ARP的应答包为单播包。
3、ARP协议安全缺陷
1. 假冒ARP应答
A未发请求包,B主动发应答包,这是A会更新其MAC地址缓冲器中主机B的MAC地址。这个缺陷导致了任何主机都可以向主机A发送假冒主机B的ARP应答包,以假的MAC地址更新主机A中MAC地址缓冲区中的主机B的MAC地址,主机A向主机B的所有通讯都将中断。
2. 点对点的假冒查询
如果主机A已经走到主机B的MAC地址,则主机A可以点对点方式直接向主机B发送单播的ARP查询包,因为主机B收到主机A的查询包后,会更新启MAC地址缓冲区中主机A的MAC地址。显然:网上任何一个主机都可以想主机B发送假冒主机A的单播ARP查询包,以后,主机B向主机A的所有IP通讯都将中断。
3. 自动定时ARP欺骗
主机MAC地址缓冲区中的其他主机的MAC地址一般要经过一段时间后就要自动更新:主机发送ARP查询包俩查询其他主机的MAC地址,在采用前面的方式进行一次ARP欺骗后,被欺骗得主机和各个主机的所有通信都不正常,但是国的MAC地址的更新时间后,被欺骗得主机和各个主机进行正常的通信,为了使得欺骗能长时间的左右,一个方法是在MAC地址更新前再次发送ARP欺骗包,如此反复。
4. 对网关的干扰
若广播式ARP查询包的源MAC地址和目的IP地址一样,则这种ARP查询包为通知ARP包,如果在以太网上发送一个IP地址为网关的欺骗ARP通知包,则使得这个网上的主机都不能访问这个局域网外的所有IP。若这个ARP通知包围干扰局域网上的某个主机,则这个主机和其他IP的所有通信都将中断。
5. 推测ARP解析时间
上面的ARP欺骗时间是拒绝服务功能(Denial of Service,DoS),如果给的是一个不存在地MAC地址,主机很快就会意识到坐在河一个不存在地主机对话,于是主机重新发送ARP查询,试图再次解析正确的MAC地址。
当给被欺骗得主机发送一个错误但是的确存在地MAC地址,这样,被欺骗的主机强向这个主机发送IP包,接受主机收到被欺骗主机的IP包后,将返回报告不可达信息的ICMP,这种方式能使得被欺骗主机推迟再次进行ARP解析的时间。
4、 于ARP改向的中间人攻击方式
5、 改进措施
1、 静态MAC地址方式
2、 取消使用ARP协议或采用更加安全的地址解析协议
3、 第三层交换方式
现在,一种基于IP地址交换的第三层交换设备已经商品化,它相当于路由器的功能,不过由于它的“路由”速度已经接近通常交换机的速度,所有人们才称为第三层交换,在该技术中的MAC地址和ARP协议已经不在起作用,因而改技术就可以使ARP改向攻击失去作用,缺点是该第三层交换机价格昂贵。
6、 结论
在交换式以太网中,窃听比较容易且极难检测,而根据ARP实现改向的窃听方式是一种主动攻击方式,技术实现还有一定难度。通过静态MAC地址方式和第三层交换技术可以使得ARP改向攻击失去作用,从而提高交换设备与网络的安全保密性。