Linuxでpcapファイルをフィルタ、分割、マージする方法

4903 ワード

***検出システムやネットワークアクセス制御ポリシーをテストするネットワーク管理者である場合は、パケットをキャプチャし、オフラインでファイルを分析する必要があります.キャプチャされたパケットを保存する必要がある場合、libpcapのパケットフォーマットpcapとして一般的に格納されます.これは、多くのオープンソースの嗅覚ツールおよびパケットプログラムで広く使用されているフォーマットです.pcapファイルが***テストまたはオフライン分析に使用される場合、通常、ネットワークに注入する前にpcapファイルをいくつか操作します.
この記事では、pcapファイルを操作するツールと、それらをどのように使用するかについて説明します.

EditcapとMergecap


Wiresharkは、最も人気のあるGUI嗅覚ツールで、実際には非常に有用なコマンドラインツールセットを持っています.editcapとmergecapが含まれています.editcapは、pcapファイルをフィルタリングし、さまざまな方法で分割できる万能のpcapエディタです.mergecapは、複数のpcapファイルを1つにマージできます.この記事は、これらのWiresharkコマンドラインツールに基づいています.
Wiresharkをインストールした場合は、これらのツールはすでにシステムにあります.まだインストールされていない場合は、Wiresharkコマンドラインツールをインストールします.DebianベースのリリースではWireshark GUIをインストールせずにコマンドラインツールのみをインストールできますが、Red HatおよびそれベースのリリースではWiresharkパッケージ全体をインストールする必要があります.
Debian,UbuntuまたはLinux Mint
$ sudo apt-get install wireshark-common

Fedora,CentOSまたはRHEL
$ sudo yum install wireshark

ツールをインストールすると、editcaとmergecapの使用を開始できます.

pcapファイルフィルタリング


editcapにより、pcapファイルの内容を多くの異なるルールでフィルタリングし、フィルタリング結果を新しいファイルに保存することができます.
まず、pcapファイルを「開始時間」でフィルタします.「-Aおよび」-Bオプションは、この期間に到着したパケット(たとえば、2:30~2:35)をフィルタします.時間のフォーマットは「YYYY-MM-DD HH:MM:SS」です.
$ editcap -A '2014-12-10 10:11:01' -B '2014-12-10 10:21:01' input.pcap output.pcap

あるファイルから指定したN個のパケットを抽出することもできます.次のコマンドラインはinput.pcapファイルから100個のパケット(401から500)を抽出しoutput.に保存する.pcap:
$ editcap input.pcap output.pcap 401-500

「-D-1パケットと順にMD 5値と比較され、一致する場合は破棄されます.
$ editcap -D 10 input.pcap output.pcap

37568個のパケットを巡回し、10ウィンドウ内で繰り返されるパケットは1個しかなく、破棄された.
を時間間隔として定義することもできます.「-w時間内に到着したパッケージを比較します.
$ editcap -w 0.5 input.pcap output.pcap

50,000個のパケットを取得し,0.5 sを繰返しウィンドウとしたが,繰返しパケットは見つからなかった.

pcapファイルを分割する


大きなpcapファイルを複数の小さなファイルに分割する必要がある場合、editcapも大きな役割を果たすことができます.
1つのpcapファイルをパケット数の同じ複数のファイルに分割する
$ editcap -c   

出力される各ファイルには、-NNNの形式で同じパケット数があります.
pcapファイルを時間間隔で分割する
$ editcap -i   

pcapファイルのマージ


複数のファイルを1つにまとめるにはmergecapが便利です.
複数のファイルをマージすると、mergecapのデフォルトでは、内部のパケットが時間順にソートされます.
$ mergecap -w output.pcap input.pcap input2.pcap [input3.pcap . . .]

タイムスタンプを無視してコマンドラインの順序でファイルをマージする場合は、-aオプションを使用します.
たとえば、次のコマンドはinput.pcapファイルの内容はoutputに書き込む.pcap,input 2.pcapの内容は後に追加します.
$ mergecap -a -w output.pcap input.pcap input2.pcap

まとめ


このガイドでは、複数のeditcap、mergecapがpcapファイルを操作する例を示します.このほか、reordercapはパケットを並べ替えたり、text 2 pcapはpcapファイルをテキストフォーマットに変換したり、pcap-diffはpcapファイルの異同を比較したりするためのツールもあります.ネットワーク***テストを行い、ネットワークの問題を解決する場合、これらのツールとパッケージ注入ツールは非常に実用的なので、彼らを理解したほうがいいです.
pcapツールを使ったことがありますか?もし使ったことがあるなら、それを使って何をしたことがありますか.
転載先:https://blog.51cto.com/yuzwei/1761643