Декодирование полезных данных интернет-пакетов в python

Я использовал scapy для прослушивания интернет-пакетов с моего компьютера, зная, что они не зашифрованы. Как я могу декодировать отправляемые данные, чтобы они были в виде открытого текста, что-то вроде wireshark, я хотел бы получить пример кода. Я не хочу использовать wireshark, я хочу написать это сам для изучения.

Я использовал следующий простой скрипт для захвата пакетов:

from scapy.all import *

def callback(pkt) :
    print pkt.summary()
    print pkt.show()

sniff(store=0, prn= callback)

1 ответ

Решение

Это зависит от приложения, которое отправляет Taffic. Если он отправляет данные в незашифрованном виде и в виде обычного текста (ascii), вы можете получить доступ и отобразить их, используя атрибут load пакета. Например:

def callback(pkt) :
    print pkt.load

Если данные не являются простым текстом, вам нужно знать, как приложение кодирует данные, и декодировать их. Если вы ищете более похожий вывод, чем Wireshark, вы можете попробовать с hexdump(pkt),

Другие вопросы по тегам