私は1時間のPCAPファイルを持っており、ここで作業中のテストネットワークで約60の個別のネットワーク攻撃が行われています。各攻撃は、その時間内に他の場所で使用されなかった一意のIPアドレスから発生します。
この1つのファイルから60pcapを作成したいのですが、バックグラウンドトラフィックも含めます。
攻撃がいつ発生するかについての実際のパターンはありません(つまり、最初の1分間に6が発生し、次の10分間に1が実行される可能性があります)。
攻撃をキャプチャするだけのファイルに分割できますが、バックグラウンドトラフィックもそこに置くことに本当に興味があります。
これが必要な理由を明確にするために、このデータを使用して、機械学習ベースのネットワークセンサーのトレーニングを試みています。
_attack-ips
_という名前のファイルに攻撃IPのリストがあり、_capture.pcap
_に生のダンプがあり、攻撃範囲が1.0.0.0/24であるとすると、tcpdump
を使用する次のスクリプトでこれを実行できます。
_while read ATTACKIP; do
tcpdump -n -r capture.pcap -w "$ATTACKIP.pcap" "Host $ATTACKIP or not net 1.0.0.0/24"
done < attack-ips
_
フィルタは、攻撃IPに出入りするトラフィック、または攻撃範囲に出入りしないトラフィックを選択します(他のすべての攻撃IPを除外するため)。
PcapPlusPlus パッケージの一部である PcapSplitter を使用できます。このツールを使用して、クライアントIPごとにpcapファイルを分割できます。この場合、おそらく60個のファイルが取得され、それぞれに1つの攻撃が含まれます。次のようにツールを使用してください。
PcapSpliter.exe -f <YOUR_PCAP> -m client-ip
使用しているOSについては言及していませんが、このツールはWin32、Linux、Macの両方をサポートしています)
SplitCap 1つのコマンドで、個々のIPアドレスのパケットを個別のpcapファイルに分割できます。
SplitCap.exe -r capture.pcap -s Host
この後、capture.pcapのIPアドレスごとに1つのpcapファイルが作成されます。各ファイルには、その特定のIPアドレスとの間のすべてのパケットが含まれます。甘くてシンプル!
SplitCapは無料で、ここから入手できます: http://www.netresec.com/?page=SplitCap