イーサネット、IP、およびレイヤー 4 (私の場合は TCP) ヘッダーのみを含む pcap ファイルを生成する自動化された方法 (tcpdump またはヘルパー アプリを介して) はありますか?結果のpcap?ヘッダーのサイズはさまざまな場合が多いため、ペイロード データをまったくキャッチしないキャプチャ サイズを選択することは不可能であることがわかりました。
17567 次
3 に答える
10
scapy
Pythonのモジュールを使用すると、TCPペイロードを非常に簡単に取り除くことができます
前
[mpenning@hotcoffee tshark_wd]$ tcpdump -n -r sample.pcap
reading from file sample.pcap, link-type EN10MB (Ethernet)
00:25:42.443559 IP 192.168.12.237.1052 > 192.168.12.236.22: Flags [P.],
seq 2445372969:2445373021, ack 1889447842, win 63432, length 52
00:25:42.443607 IP 192.168.12.236.22 > 192.168.12.237.1052: Flags [.],
ack 52, win 65535, length 0
00:25:42.443980 IP 192.168.12.236.22 > 192.168.12.237.1052: Flags [P.],
seq 1:389, ack 52, win 65535, length 388
ペイロードストリッピング
これをLinuxでrootとして実行しています...
#!/usr/bin/env python
from scapy.all import *
INFILE = 'sample.pcap'
OUTFILE = 'stripped.pcap'
paks = rdpcap(INFILE)
for pak in paks:
pak[TCP].remove_payload()
wrpcap(OUTFILE, paks)
後
[mpenning@hotcoffee tshark_wd]$ tcpdump -n -r stripped.pcap
reading from file sample.pcap, link-type EN10MB (Ethernet)
00:25:42.443559 IP truncated-ip - 52 bytes missing! 192.168.12.237.1052
> 192.168.12.236.22: Flags [P.], seq 2445372969:2445373021,
ack 1889447842, win 63432, length 52
00:25:42.443607 IP 192.168.12.236.22 > 192.168.12.237.1052: Flags [.],
ack 52, win 65535, length 0
00:25:42.443980 IP truncated-ip - 388 bytes missing! 192.168.12.236.22
> 192.168.12.237.1052: Flags [P.], seq 1:389,
ack 52, win 65535, length 388
上記ではtcpdump
、「XXバイトが欠落しています!」に注意してください。メッセージ。これは、TCPペイロードを削除したためです。
于 2011-12-09T06:44:20.373 に答える
1
If simple truncate would work for you, you could use:
tcpdump -i eth0 -s 96 -w test1.pcap
Later on you can analyze it with wireshark.
于 2011-12-09T04:05:22.533 に答える