Как сохранить полученный пакет в переменную для команды pkt.show ()? - PullRequest
0 голосов
/ 24 мая 2019

Я хотел сохранить пакет Raw, полученный с помощью команды sniff scapy, и использовать его в дальнейшем.Как я могу это сделать?

Я могу напечатать данные в командной строке, но не могу их сохранить.

Это мой код:

def pkt_callback(pkt):
    self.S = pkt.show()         
    self.P = sniff(count = self.C, filter="udp", prn = pkt_callback)

Когда я запускаю этот кодЯ получаю данные, но не могу их сохранить

Я ожидаю сохранить данные о загрузке / сырье в переменную

load = '\x17\x03\x01\x01`\ngD\xdb/\xe5m!jEm\xe1%\x88\xa9~ *y\xcc\xd1T\xb6Vg\xb3\x82\\\x00\x91\r\xc1\xe4\xe0\xdb\xa2|\xc2\x86\xa2\x99J0\x86V\xc5\xad}y\xb4k&\x1e$\xcb\xcc\x99\xe0\xdb\xcf<\x1e\xc1\x10ZD\xc5\x8b\xaa\xa0\x0c\x08\xc4\xa1\xa0&\xd6.\x1f\

, но не могу это сделать.

1 Ответ

0 голосов
/ 27 мая 2019

У меня есть ответ, который сработал для меня, надеясь, что это может кому-то помочь:

    pkts = sniff(count =self.c,filter = "dst host %s or src host %s and udp" % (self.dst, self.src))

    pkt = pkts[0]          

    pkt_raw = raw(pkt)
    print("Raw packet data",pkt_raw)

нашел решение из https://buildmedia.readthedocs.org/media/pdf/scapy/stable/scapy.pdf

...