2016-08-03 87 views
2

我用tcpdump得到了一堆pcap文件。我需要搜索所有關鍵字並記錄哪些文件包含這些字符串。有沒有辦法使用tcpdump命令自動搜索這些關鍵字?用tcpdump搜索很多pcap文件

+1

也許一個使用'''dpkt'''模塊的python腳本可以幫助你實現 –

回答

1

有更強大的tcpdump版本,tshark(它是wireshark包中的命令行工具)。您可以使用tshark -T字段| pdml | ps | psml | text以您喜歡的格式轉儲數據包,並且只需grep它。 tshark可以讀取tcpdump轉儲。

+0

我不太確定我會如何使用它。假設我有一個捕獲文件(capture.pcap),我想搜索文件是否包含關鍵字「example1」和「example2」。我將如何使用您的解決方案? –

2

可能使用tshark最通用的解決方案是將運行類似:

tshark -r file.pcap -Y "frame contains foo" 

...其中foo是你要搜索的字符串。有關使用contains和其他運算符(如支持Perl兼容正則表達式的matches運算符)進行篩選的更多信息,請參閱wireshark-filter man page

使用該命令,您將看到的輸出將是與過濾器匹配的每個數據包的單行摘要。你可以定製使用多種方法的輸出,但例如,假設你只想知道匹配數據包的幀數,你可以運行:

tshark -r file.pcap -Y "frame contains foo" -T fields -e frame.number 

參考tshark man page的詳細信息,在-T-e選項,以及可能對您有用的其他選項。