cara membagi file pcap menjadi satu set yang lebih kecil


47

Saya memiliki file pcap besar (dihasilkan oleh tcpdump). Ketika saya mencoba membukanya di wireshark, program tersebut menjadi tidak responsif. Apakah ada cara untuk membagi file dalam set yang lebih kecil untuk membukanya satu per satu? Lalu lintas yang diambil dalam file dihasilkan oleh dua program pada dua server, jadi saya tidak dapat membagi file menggunakan filter 'host' atau 'port' tcpdump. Saya juga sudah mencoba perintah 'split' linux :-) tetapi tidak berhasil. Wireshark tidak akan mengenali formatnya.


Seberapa besar? Apakah ini jauh lebih besar daripada RAM yang tersedia?
pehrs

2
Sedikit terlambat, tetapi alasan Wireshark tidak akan membaca file yang merupakan output splitadalah karena split akan membagi pada batas byte yang tepat. Ini sangat mungkin untuk membagi paket yang membatalkan beberapa konten file.
Burhan Ali

Jawaban:


72

Anda dapat menggunakan tcpdump sendiri dengan opsi -C, -r dan -w

tcpdump -r old_file -w new_files -C 10

Opsi "-C" menentukan ukuran file untuk dipecah. Misalnya: Dalam kasus di atas ukuran file baru masing-masing akan 10 juta byte.


Anda adalah manusia yang luar biasa, Dan.
lobi

Apakah ada cara untuk melakukan ini tanpa memecah sesi? (Dengan asumsi satu sesi lebih kecil dari argumen batas ukuran).
spanishgum

Cepat: tcpdump -r old_file -w new_files -C 1000 membagi pada setiap 955MB lalu lintas yang direkam
gies0r

18

Gunakan editcaputilitas yang didistribusikan bersama Wireshark.


5
editpcap -c 1000 input.pcap output.pcapakan dibagi input.pcapmenjadi tangkapan dengan maksimum 1000 paket per tangkapan. Output akan berupa beberapa file pengambilan yang diformat sepertioutput_{index}_{timestamp}.pcap
blachniet

1
Terima kasih blachniet untuk contohnya! Tapi itu hanya editcap, bukan editpcap, bukan?
lindhe

3

Saya tahu jawaban ini sedikit terlambat, tetapi mungkin melayani orang lain juga. Saya menemukan alat yang hebat untuk memisahkan file pcap: PcapSplitter . Ini adalah bagian dari perpustakaan PcapPlusPlus yang berarti lintas-platform (Win32, Linux dan Mac OS), dan dapat membagi file pcap berdasarkan kriteria yang berbeda seperti ukuran file (apa yang tampaknya Anda butuhkan) tetapi juga dengan koneksi, klien / server IP, port server (mirip dengan protokol), jumlah paket, dll. Saya merasa sangat berguna. Tautan di atas adalah untuk kode sumber, tetapi jika Anda tidak ingin / tahu cara mengkompilasi, saya membuat binari yang dikompilasi untuk beberapa platform yang saya gunakan dengan alat ini. Saya sangat merekomendasikan alat ini

EDIT: rupanya versi baru PcapPlusPlus dirilis dan berisi binari PcapSplitter untuk banyak platform (Windows, Ubuntu 12.04 / 14.04, Mac OSX Mavericks / Yosemite / El Captian). Saya pikir lebih baik menggunakan binari ini daripada tautan yang saya berikan sebelumnya. Anda dapat menemukannya di sini


2

Cara terbaik dan tercepat untuk pergi adalah menggunakan SplitCap, yang dapat membagi file-file dump paket besar berdasarkan sesi misalnya. Dengan cara ini Anda akan mendapatkan setiap sesi TCP dalam file PCAP terpisah. SplitCap juga dapat memisahkan paket menjadi file pcap berdasarkan alamat IP.

Anda dapat membaca lebih lanjut tentang SplitCap di blog Netresec: http://www.netresec.com/?page=Blog&month=2011-05&post=Split-or-filter-your-PCAP-files-with-wplitCap

Unduh SplitCap dari sini: http://www.netresec.com/?page=SplitCap

Semoga berhasil!


Apakah ada versi linux?
ychaouche

Ini adalah program yang bagus, tidak memiliki kemampuan untuk bekerja dengan file pcapng.
Guntram Blohm mendukung Monica

0
tcpdump -w trace.pcap -W 48 -G 300 -C 100 -i any port 41110
  • -G 300 itu akan berputar dalam 5 menit
  • -W 48 hitungan file
  • -C 100 ukuran file 100 MB
  • port Anda dapat menentukan port berdasarkan aplikasi
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.