我是 scapy 新手,需要这部分的帮助。因此,我已经安装了该软件包,并且正在尝试执行下面的代码,但没有任何内容打印到我的终端上。我需要帮助了解我可能做错了什么
#!/usr/bin/python
from scapy.all import *
def modify_packet_contents_ld(pkt_ld):
if ICMP in pkt_ld and pkt_ld[IP].src=='10.10.10.10':
pkt_ld[IP].src,pkt_ld[IP].dst=pkt_ld[IP].dst,pkt_ld[IP].src #REVERSING THE SOURCE AND DESTINATION IP ADDRESSES
pkt_ld[ICMP].load="hello-world"
send(pkt_ld)
def sniff_packet_ld():
sniff(filter='icmp and src host 10.10.10.10', prn=modify_packet_contents_ld, iface='br-xxx')
sniff_packet_ld()
您定义了两个函数,并且您创建的这些函数中没有任何打印语句。
然后您调用了其中一个,即
sniff_packet_ld()
,它没有打印任何内容,因为您没有在这些函数中放置任何打印语句。
我也不确定你是如何让它运行的,因为当我将你的代码粘贴到我的 IDE 中时,ICMP 和 IP 是未定义的。但也许我只是没有正确导入 Scapy。另外你能解释一下这个程序的用途吗?
尝试将其添加到您的代码中:
sniffing = sniff_packet_ld()
print(sniffing)
将其存储在变量中应该使其可打印,或者也许我完全错了。