实验工具
- Sniffer Portable
- Switcher: S2126G
- Router: R1700
- PC * 3
实验拓扑
实验原理
在以太网同一网段内部,当一个基于TCP/IP的应用程序需要从一台主机发送数据给另一台主机时,它把信息分割并封装成包,附上目的主机的 IP 地址。然后,寻找 IP 地址到实际 MAC 地址的映射,这需要发送 ARP 广播消息。当 ARP 找到了目的主机 MAC 地址后,就可以形成待发送帧的完整以太网帧头(在以太网中,同一局域网内的通信是通过 MAC 寻址来完成的,所以在 IP 数据包前要封装以太网数据帧,当然要有 明确的目的主机的 MAC 地址方可正常通信)。最后,协议栈将 IP 包封装到以太网帧 中进行传送。
实验步骤
首先搭建网络环境并Ping测试。经过验证一切正常,在老师查看过后,进行ARP欺骗实验。
1 ARP攻击
在PC1上输入arp -d
清空其arp缓存,然后打开Sniffer,使其处于对ARP协议的监听状态,接着ping网关,如下:
停止并查看包:
选择一个ARP请求包,按如下方式编辑:
将源mac地址改为001122334455,将源IP改为网关IP,将目的IP改为192.168.1.3:
此时,在PC2上,先ping一下网关,再查看arp缓存,发现存在正确的项。接着打开Sniffer开启对ARP协议的监听。
在PC1上发送经过编辑的包,然后在PC2上查看情况:
可以发现,此时PC2的arp表已经被修改为假的网关mac地址项,此时ping网关,不再能ping通:
2 防御ARP攻击
我们在交换机上配置anti-arp,原理是丢弃从PC1和PC2端口发出的源IP为网关IP的ARP报文:
配置情况如下:
再次进行ARP攻击实验,PC2能够正常通过网关访问200.1.8.8上的Web服务器:
证明防御成功。
心得体会
ARP攻击是一种易实施、高危害的网络攻击。网络管理员需要对此做好防范。