有人可以帮助我使用scapy将嗅探包保存到文件中吗?我需要使用scapy来嗅探直到使用keyboardInter并将嗅探的数据包保存到pcap文件中,问题是keyboardInterrupt会使嗅探的数据包消失,所以有没有办法在嗅探时保存数据包?或者将它们保存到变量中,即使存在异常?
这是我到目前为止所尝试的但是这个例子阻止它被保存:
from scapy.all import *
try:
packets = sniff()
except KeyboardInterrupt as ki:
pass
答案 0 :(得分:0)
也许你可以使用函数存储它们
from scapy.all import *
packet_list = []
def storepkt(pkt):
packet_list.append(pkt)
try:
sniff(ptr=storepkt)
except KeyboardInterrupt as ki:
#Here you should have access to the packet_list list and do whatever you need with them, i.e.:
for pkt in packet_list:
pkt.show()
请注意,此代码适用于Python 2.7。