GNU/Linux >> Belajar Linux >  >> Linux

alat untuk memisahkan file pcap dengan koneksi TCP?

Solusi 1:

Anda dapat menggunakan tcpdump untuk mengekstrak bagian pcap yang Anda inginkan... misalkan Anda sedang mencari paket dalam koneksi soket antara TCP/55777 di satu host dan TCP/80 di host lain. File sumber Anda adalah bigfile.pcap , yang merupakan dump sniffer dari banyak sesi HTTP ke host web yang bersangkutan...

tcpdump -r bigfile.pcap -w session.pcap -s0 tcp and port 55777

Itu akan menarik semua paket yang menuju dan dari TCP/55777 di bigfile.pcap dan salin ke session.pcap .

Solusi 2:

Anda juga dapat menggunakan PcapSplitter yang merupakan bagian dari paket PcapPlusPlus. Itu melakukan persis apa yang Anda butuhkan (yaitu memisahkan file pcap dengan koneksi TCP atau UDP), multi-platform dan tidak memiliki batasan jumlah koneksi dalam file asli (sehingga Anda dapat menggunakannya untuk membagi file besar file pcap yang berisi ribuan koneksi atau bahkan lebih). Tautan di atas adalah untuk kode sumber, tetapi jika Anda menginginkan biner yang dikompilasi - ini adalah tautan untuk binari yang saya buat untuk beberapa platform

EDIT: rupanya versi baru PcapPlusPlus telah 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

Solusi 3:

tcpflow adalah yang Anda inginkan - membagi pcaps menjadi satu file per sesi TCP

http://www.circlemud.org/jelson/software/tcpflow/

Solusi 4:

Sedikit berlebihan, tetapi menggunakan tshark (dikirim dengan wireshark ), Anda dapat melakukannya dengan zsh :

file=file.pcap
tshark -Tfields -e tcp.stream \
                -e frame.time_epoch \
                -e ip.src \
                -e tcp.srcport \
                -e ip.dst \
                -e tcp.dstport -r $file |
  sort -snu |
  while read -A f; do 
    tshark -r $file -2R "tcp.stream == $f[1]" -w ${(j:-:)f[2,-1]}.pcap
  done

Yang menghasilkan file bernama seperti 1509466312.202450000-10.0.0.1-58892-10.0.0.2-80.pcap (berdasarkan paket pertama yang terlihat untuk setiap koneksi).

Solusi 5:

Sepertinya ada alat ini yang mungkin berfungsi (saya belum pernah menggunakannya secara pribadi)

http://www.netresec.com/?page=SplitCap (berbasis windows)

SplitCap adalah pemecah file pcap sumber terbuka (seperti dalam bir) gratis. SplitCapsmembagi satu file pcap besar menjadi beberapa file berdasarkan sesi TCP dan UDP, satu file pcap per sesi. SplitCap juga dapat digunakan untuk membagi file pcap menjadi satu file pcap per host-pair, bukan sesi.


Linux
  1. Alat Baris Perintah yang Kuat Untuk Memproses File Csv?

  2. Hapus Semua File/direktori Kecuali Satu File?

  3. Script Shell Untuk Memindahkan File Terlama?

  1. KRename – Pengubah Nama File Batch yang Kuat untuk Linux

  2. Cara Audit untuk Modifikasi file dan Eksekusi File di Linux

  3. Koneksi SSH Ditolak oleh TCP Wrapper

  1. Linux:hapus ekstensi file untuk banyak file

  2. Butuh editor hex yang bagus untuk Linux

  3. Bagaimana cara memantau nilai cwnd dan ssthresh untuk koneksi TCP?