GNU/Linux >> Tutoriales Linux >  >> Linux

herramienta para dividir archivos pcap por conexión TCP?

Solución 1:

Puedes usar tcpdump para extraer las partes del pcap que desea... suponga que está buscando paquetes en una conexión de socket entre TCP/55777 en un host y TCP/80 en otro. Su archivo fuente es bigfile.pcap , que es un volcado de sniffer de muchas sesiones HTTP al servidor web en cuestión...

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

Eso extraerá todos los paquetes que van y vienen de TCP/55777 en bigfile.pcap y copiarlos en session.pcap .

Solución 2:

También puede usar PcapSplitter, que es parte del paquete PcapPlusPlus. Hace exactamente lo que necesita (que es dividir archivos pcap por conexión TCP o UDP), es multiplataforma y no tiene un límite en la cantidad de conexiones en el archivo original (por lo que puede usarlo para dividir un gran pcap que contiene miles de conexiones o incluso más). El enlace anterior es para el código fuente, pero si desea un binario compilado, aquí hay un enlace para los binarios que hice para varias plataformas

EDITAR: aparentemente se lanzó una nueva versión de PcapPlusPlus y contiene binarios de PcapSplitter para muchas plataformas (Windows, Ubuntu 12.04/14.04, Mac OSX Mavericks/Yosemite/El Captian). Creo que es mejor usar estos binarios que el enlace que proporcioné anteriormente. Puedes encontrarlo aquí

Solución 3:

tcpflow es lo que desea:divide pcaps en un archivo por sesión TCP

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

Solución 4:

Un poco exagerado, pero usando tshark (enviado con wireshark ), te vendría bien con 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

Que genera archivos llamados como 1509466312.202450000-10.0.0.1-58892-10.0.0.2-80.pcap (basado en el primer paquete visto para cada conexión).

Solución 5:

Parece que existe esta herramienta que podría funcionar (no la he usado personalmente)

http://www.netresec.com/?page=SplitCap (basado en Windows)

SplitCap es un divisor de archivos pcap de código abierto gratuito (como en la cerveza). SplitCap divide un gran archivo pcap en varios archivos según las sesiones TCP y UDP, un archivo pcap por sesión. SplitCap también se puede usar para dividir un archivo pcap en un archivo pcap por par de host en lugar de sesión.


Linux
  1. ¿Herramienta robusta de línea de comandos para procesar archivos Csv?

  2. ¿Eliminar todos los archivos/directorios excepto un archivo?

  3. ¿Script de Shell para mover archivos más antiguos?

  4. ¿Esperar a que terminen de descargarse varios archivos?

  5. ANGRYsearch:una herramienta de búsqueda rápida de archivos para escritorios Linux

7 consejos de línea de comandos de Linux para ahorrar espacio en archivos multimedia

Comando ls en Linux para listar archivos

La herramienta de cifrado de archivos Tomb protege sus archivos secretos en Linux

Linux:elimine las extensiones de archivo para varios archivos

Necesita un buen editor hexadecimal para Linux

¿Cómo monitorear los valores cwnd y ssthresh para una conexión TCP?