2015-04-30 65 views
0

我已經使用scapy從我的電腦嗅探互聯網數據包,知道他們沒有加密如何解碼發送的數據,因此它以明文形式出現,像wireshark那樣,我想一個例子的代碼。 我不想使用wireshark我想自己編寫這個代碼來學習。在Python中解碼互聯網數據包的有效載荷

我用下面簡單的腳本來捕獲數據包:

from scapy.all import * 

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

sniff(store=0, prn= callback) 
+0

發佈您寫入的用於捕獲數據包的代碼。 – pajaja

+0

@pajaja完成,腳本不是問題,我得到包的信息和所有我只想知道如何提取原始數據發送和解碼它 –

回答

0

這取決於發送taffic應用。如果數據以未加密方式發送並以純文本格式(ascii)發送,則可以使用數據包的屬性load訪問並顯示它。例如:

def callback(pkt) : 
    print pkt.load 

如果數據不是你需要知道應用程序是如何編碼的數據,並對其進行解碼純文本。如果你正在尋找更類似於wireshark的輸出,你可以嘗試hexdump(pkt)

相關問題