ARP是地址解析协议,是一种将IP地址转换成物理地址的协议。ARP具体来说就是将网络层地址解析为数据链路层的的MAC地址。
ARP欺骗就是攻击者伪造大量的就是伪造IP和MAC地址进行的攻击或者欺骗,但是在我看来,ARP攻击所产生的效果就是使目标主机断网,这种行为从某种意义上来说是,是损人不利己的,因为攻击者并没有得到什么好处,只是让对方不能上网。这种也只能是一种入门的简单实验。下面就是实验过程。
首先创建虚拟机并开启Kali Linux和Windows XP。
一、实验环境:
攻击机:Kali Linux
靶 机:Windows XP
网卡连接:NAT(Vmnet 8)
IP地址:自动获取(通过Vmware软件自动分配IP地址)
二、实验步骤:
1、查看IP地址:
Kalinux(攻击机): ifconfig eth0
Windows XP(靶机): ipconfig /all(也可以直接在桌面上进行查看)
判断2台主机IP地址是否在同一个IP网段。
Kali(攻击机)的IP地址为192.168.223.137
windowsXP(靶机)的IP地址为192.168.223.133
两台主机处于同一网段。
2、连通性测试:
Windows XP(靶机):关闭防火墙
Kali Linux(攻击机):ping WindowsXP(靶机)的IP地址
如图,在Kali上可以ping通。
3、Windows XP(靶机)上网测试:
打开IE浏览器---在地址栏中输入---http://www.baidu.com(能看到百度页面)
查看windowsXP(靶机)的IP地址和对应的MAC地址,有两种方式:
第一种:执行:ipconfig /all
执行:arp -a
第二种:在桌面上右键点击网上邻居--》属性--》右键本地连接--》状态--》支持--》详细信息
其中实际地址就是MAC地址,IP地址就是对应的ip
4、ARP攻击:
Kali Linux:arpspoof -i eth0 -t WindowsXP的IP地址 -r 网关地址
例如: arpspoof -i eth0 -t 192.168.223.133 -r 192.168.223.2
5、查看攻击效果:
第一种:在Kali中利用命令行arp -a查看MAC地址是否改变
第二种:直接输入http://www.baidu.com看是否可以上网,实验证明不能上网
6、MAC地址绑定:
Kali Linux:在Kali终端中用Ctrl+C终止ARP攻击
Windows XP:MAC地址会在结束攻击后会自动恢复到正确的MAC地址
arp -a (网关MAC地址重新变回正确的地址)
arp -s 网关IP地址 网关的正确MAC地址(注意IP地址和MAC之间没有任何符号)
例如:arp -s 192.168.223.13300-0C-29-A3-F4-64
7、再次执行ARP攻击:
Kali Linux:arpspoof -i eth0 -t WinXP的IP地址 -r 网关地址或内网中其他主机的IP地址
例如:arpspoof -i eth0 -t 192.168.223.133 -r 192.168.223.2
(和之前ARP攻击操作过程一样)
8、再次查看网关MAC地址:
Windows XP:
arp -a (查看网关MAC地址是否被改变,如果未改变,说明MAC地址的静态绑定成功了。)
如图:这是在第二次ARP之前的和之后分别查看的MAC地址,发现前后MAC地址并没有发生改变,因此说明MAC地址静态绑定成功了。
9 、通过wireshark抓包可以看见大量的ARP包,说明刚才确实执行了ARP欺骗。
三、防范措施
1.不要把计算机的安全关系单独建立在IP基础上或者MAC基础上,理想关系应该是建立在IP+MAC基础上。
2.设置静态的MAC——>IP对应表,不要让主机刷新预先设定好的转换表。
3.除非有必要,否则停止使用ARP协议,将ARP作为永久条目保存在对应表中。
4.使用安全的ARP服务器。
5.使用硬件屏蔽主机。
6.管理员定期用响应的IP包中获得一个RARP请求,然后检查ARP响应的真实性,发现异常立即处理。
7.使用防火墙连续监控网络。