[Python][Scapy]擷取與解析封包

文、意如

步驟一,安裝scapy

指令:pip install scapy

步驟二,下載Npcap安裝檔

https://npcap.com/#download

程式碼:
from scapy.all import sniff

'''
列印每個擷取到的封包摘要,包含了封包的各層協定(例如 Ether/IP/TCP 等)以及來源/目的 IP 和埠號等關鍵資訊。
'''
def print_packet_summary(packet):
  
    print(f"[資安工具-偵測] {packet.summary()}")
    
'''
封包嗅探器
'''
def start_simple_sniffing(count=5):

    print("---啟動資安工具---")
    print(f"正在擷取前 {count} 個網路封包並解析...")
    
    # count=5: 只抓 5 個封包
    # prn=print_packet_summary: 每抓一個封包,就呼叫我們的解析函式
    sniff(prn=print_packet_summary, count=count)
    
    print("---封包解析完成---")

if __name__ == "__main__":
    start_simple_sniffing(count=5)


執行擷取與解析封包:

 

 

 

Yiru@Studio - 關於我 - 意如