《信息安全与攻击防范》课程论文
——ARP的欺骗原理和攻防
ARP协议是什么
ARP(AddressResolutionProtocol),即地址解析协议。其基本功能通过目标设备的IP地址,查询目标设备的MAC地址,以保证通讯的顺利进行。它是IPv4中网络层必不可少的协议,不过在IPv6中已不在适用,并被NDP(邻居发现协议)所代替。
基本功能
在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行自己通信,必须知道目标主机的MAC地址。而在TCP/IP协议中,网络层和传输层之关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供数据中,只包含目的主机IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓的地址解析(AddressResolution)就是主机在发送帧前将目的IP地址转换成目标MAC地址的过程。另外,当发送主机和目的主机在不同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况叫做ARP代理(ARPProxy)。
原理
在每台安装有TCP/IP协议的电脑或路由器中都会有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的。如下表所示。
Address |
Hardwaretype |
Hardwareaddress |
Flags |
Mask |
Interface |
192.168.137.12 |
ether |
74:d0:2b:45:a8:a9 |
C |
|
wlan0 |
192.168.137.69 |
ether |
20:89:84:8a:8a:da |