一、 APR协议(Address Resolution Protocol)
地址解析协议:根据IP地址获取物理地址的一个TCP/IP协议。地址解析将主机在发送帧前将目标IP地址转换为目标MAC地址的过程。地址解析协议建立在网络中各个主机互相信任的基础上。
1. 主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址。
2. 收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
二、 ARP欺骗(ARP spoofing)
针对以太网ARP的一种攻击技术,通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,从而导致网络不通。ARP攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,还可以让网上特定计算机或所有计算机无法正常连线。
假设在一个局域网里,只有三台主机A、B、C,且C是攻击者。
(1)攻击者监听局域网上的MAC地址。它只要收到两台主机洪泛的ARP Request,就可以进行欺骗活动。
(2)主机A、B都洪泛了ARP Request.攻击者现在有了两台主机的IP、MAC地址,开始攻击。
(3)攻击者发送一个ARP Reply给主机B,把此包protocol header里的sender IP设为A的IP地址,sender mac设为攻击者自己的MAC地址。
(4)主机B收到ARP Reply后,更新它的ARP表,把主机A的MAC地址(IP_A, MAC_A)改为(IP_A, MAC_C)。
(5)当主机B要发送数据包给主机A时,它根据ARP表来封装数据包的Link报头,把目的MAC地址设为MAC_C,而非MAC_A。
(6)当交换机收到B发送给A的数据包时,根据此包的目的MAC地址(MAC_C)而把数据包转发给攻击者C。
(7)攻击者收到数据包后,可以把它存起来后再发送给A,达到窃听效果。攻击者也可以篡改数据后才发送数据包给A,造成伤害。
ARP攻击会发出大量的数据包造成路由器处理能力下降,就会导致目标电脑或者服务器网速慢,不停掉线,无法上网或者访问等,而ARP攻击停止后又会恢复网络。
三、 ARP攻击的防御
1、使用静态ARP缓存
2、隐藏真实的物理地址(MAC)
3、使用三层交换设备
4、IP 与MAC地址进行绑定
5、定期检查ARP缓存
6、ARP攻击的防御设备