2011-06-17 27 views
2

私は2つのpcapファイル PCAPキャプチャマージ問題

$ capinfos cap1_stego0.pcap 
File name:   cap1_stego0.pcap 
File type:   Wireshark/tcpdump/... - libpcap 
File encapsulation: Raw IP 
Number of packets: 713 

と私はそれらをマージしたい
$ capinfos cap1_wlan0.pcap 
File name:   cap1_wlan0.pcap 
File type:   Wireshark/tcpdump/... - libpcap 
File encapsulation: Ethernet 

を持っていますが、incapsulationが異なっています。私は

mergecap -v -w asd.pcap cap1_stego0.pcap cap1_wlan0.pcap -T rawip 

または

mergecap -v -w asd.pcap cap1_wlan0.pcap cap1_stego0.pcap -T rawip 

を使用している場合はWiresharkのは、第二の過去のファイルを認識し、それぞれraw packet dataなどcap1_stego0.pcapcap1_wlan0.pcapまたはパケットのパケットを示していません。また、 "tcpslice"を使用してのイーサネットレイヤーを削除して(両方のファイルをカプセル化してrawipにする)、認識できないパケットデータを表示します。

どうすればいいですか?別のカプセル化でpcapをマージするか、eth-> rawipまたはrawip-> ethに変換する方法がありますか?ありがとうございました。 (その後、他のイーサネットカプセル化ファイルをマージすることができます)イーサネットカプセル化されたファイルにRAW_IPファイルを変換する

答えて

2

一つの方法:

  1. 使用tsharkのはRAW_IPからのパケットの進ダンプを取得しますファイル:

    tshark -nxr pcap-file-name | grep -vP "^ +\d" > foo.txt 
    

    (grepは、tshark出力から「要約」行を削除するために使用されます)。

    text2pacp -e 0x0800 foo.txt foo.pcap 
    

あなたはタイムスタンプを維持したい場合は、あなたと少し周りをプレイする必要があります:ダミー イーサネットヘッダを追加しながら、バックのpcapファイルに変換する

  • 使用text2pcap tshark出力 は、text2pcapが受け入れ、また16進パケット情報を含む形式でタイムスタンプを含むテキストファイルを取得します。

    [ イーサネットヘッダーを削除するオプションはありますか? (マニュアルページを見ると、pcapファイルから時間範囲を抽出するためにtcpsliceが使用されているようです)。

    キャプチャファイルからイーサネットヘッダーを削除する方法がある場合は、結果のpcapファイルのカプセル化タイプがRAW_IPであることを確認してから、wireshark、mergecapなどで読み取る必要があります。

    また、-Tスイッチをmergecapに設定すると、ファイルに指定されたカプセル化タイプが強制的に強制されます。実際のカプセル化は変更されない(すなわち、バイトは追加/変更/削除されない)。 ]