Formato para Captura de Paquetes

  • Posted on: 26 May 2020
  • By: ReYDeS

Las herramientas de seguridad en red y vigilancia no están necesariamente diseñadas para manejar investigaciones forenses. Para lograr esto, se requiere capturar los paquetes de datos completos para luego analizarlos en detalle. Los paquetes pueden ser capturados en archivos libpcap (.pcap), ejecutando un sniffer de paquetes como TCPdump o Wireshark. Estas capturas ayudan a los investigadores a entender el ataque, quien está detrás del ataque, desde donde entró el atacante, y como se generó una brecha en la red.

Libpcap es un formato de archivo muy básico, utilizado para guardar los datos de red capturados. La extensión del archivo es .pcap. El archivo tiene un cabecera global conteniendo información general seguida por ceros o más registros para cada paquete capturado. El paquete capturado en un archivo libpcap no contiene todos los datos en el paquete, tal como aparecieron en la red. Contiene como máximo los primeros N bytes de cada paquete. El valor de N es denominado “longitud de la instantánea”. N será un valor mayor comparado con el paquete más grande posible para garantizar no se corte ningún paquete en la captura, con un valor típico de 65535.

La cabecera global se coloca primero en el archivo con los campos indicando el formato del archivo, orden de los bytes, y el número de versión. Esto especifica el tiempo correcto en segundos entre GMT y la zona de tiempo local, además de la precisión de las marcas de tiempo en la captura. La longitud de captura del paquete, N, es especificado por “snaplen”. También se menciona el tipo de capa de enlace de datos.

La cabecera global es seguida por un secuencia de cabeceras de paquetes y datos de paquetes. La cabecera del paquete tiene campos de información, “ts_sec”, el cual define la fecha y hora de cuando se capturó el paquete; “ts_usec”, los microsegundos de desplazamiento hacia “ts_sc” de cuando se capturó el paquete; “incl_len”, el número de bytes del paquete de datos capturado actualmente y guardado en un archivo; y el campo “orig_len” el cual define la longitud del paquete, tal como apareció en la red. Los datos del paquete actual seguirán inmediatamente la cabecera del paquete, como elemento de datos de “incl_len” bytes sin una alineación específica de bytes.

Fuentes:

https://www.tcpdump.org/
https://wiki.wireshark.org/libpcap
https://www.tcpdump.org/manpages/pcap.3pcap.html
https://wiki.wireshark.org/Development/LibpcapFileFormat
https://www.wireshark.org/

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor en Hacking Ético, Forense Digital & GNU/Linux
Correo Electrónico: ReYDeS@gmail.com
Twitter: @Alonso_ReYDeS
LinkedIn: pe.linkedin.com/in/alonsocaballeroquezada
Facebook: https://www.facebook.com/alonsoreydes
Youtube: http://www.youtube.com/c/AlonsoCaballero
Resumen de mi CV: http://www.reydes.com/d/?q=node/1