使用PYTHON解析Wireshark的PCAP文件方法
PYTHON首先要安裝scapy模塊
PY3的安裝scapy-python3,使用PIP安裝就好了,注意,PY3無法使用pyinstaller打包文件,PY2正常
PY2的安裝scapy,比較麻煩
from scapy.all import * pcaps = rdpcap("file.pcap")
pcaps便是解析后的類似結構體的東西了
<pre name="code" class="python">packet=pcaps[0] #第1個數(shù)據包結構
packet.time#數(shù)據包時間戳
packet[Raw].load#PY3讀取節(jié)點數(shù)據方法,packet[IP].src;packet[IP].dst
packet['Raw'].load#PY2讀取節(jié)點數(shù)據方法,PY3也應該可以
lambda="lambda pcap:IP in pcap and UDP in pcap and pcap[IP].src=='192.168.1.1' and pcap[UDP].sport==80"
results=pcaps.filter(eval(lambda))#lambda是一種表達式,這里使用字符串,也可以不用eval,直接寫表達式,然后返回經過篩選的數(shù)據包
python解析數(shù)據包十分占用內存,建議先用tshark命令行預處理篩選一遍數(shù)據包再進行PYTHON處理
cmd_filter="%s && ip.src==%s && ip.dst==%s && %s.srcport==%s && %s.port==%s"% \ (Node['proto'].lower(),Node['src'],Node['dst'],Node['proto'].lower(),Node['sport'],Node['proto'].lower(),Node['dport']) os.system('start /WAIT "" "%s\tshark" -r "%s" -R "%s" -w "%s"'%(Wireshark_path,pcap_filename,cmd_filter,Temp_pcap_File))
然后在處理Temp_pcap_File文件就好了
以上這篇使用PYTHON解析Wireshark的PCAP文件方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
深入理解Python內置函數(shù)map filter reduce及與列表推導式對比
這篇文章主要為大家介紹了Python內置函數(shù)map filter reduce及與列表推導式對比方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-06-06Python利用AutoGrad實現(xiàn)自動計算函數(shù)斜率和梯度
AutoGrad 是一個老少皆宜的 Python 梯度計算模塊。對于大學生、機器學習愛好者而言,你只需要傳遞給它Numpy這樣的標準數(shù)據庫下編寫的損失函數(shù),它就可以自動計算損失函數(shù)的導數(shù)(梯度)。本文將從普通斜率計算開始,介紹到如何只使用它來實現(xiàn)一個邏輯回歸模型2022-07-07Python字典一個key對應多個value幾種實現(xiàn)方式
python中字典的健和值是一一對應的,如果對字典進行添加操作時如果健的名字相同,則當前健對應的值就會被覆蓋,有時候我們想要一個健對應多個值的場景,這篇文章主要給大家介紹了關于Python字典一個key對應多個value幾種實現(xiàn)方式的相關資料,需要的朋友可以參考下2023-10-10用python實現(xiàn)域名資產監(jiān)控的詳細步驟
域名資產監(jiān)控,通過輸入一個主域名,找到該域名對應的ip地址所在的服務器的端口開閉情況,本文重點給大家介紹用python實現(xiàn)域名資產監(jiān)控的問題,需要的朋友可以參考下2021-11-11