Análisis de Paquetes con Wireshark y Tshark

WiresharkBeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderá los fundamentos del análisis de paquetes de red utilizando Wireshark y su contraparte de línea de comandos, Tshark. Comenzará explorando las interfaces de red y luego pasará a capturar tráfico de red en vivo. También aprenderá a leer, filtrar y analizar archivos de captura de paquetes preexistentes utilizando tanto la herramienta de línea de comandos Tshark como la interfaz gráfica de usuario de Wireshark. Este laboratorio proporciona una comprensión fundamental del análisis de paquetes, una habilidad crítica para la solución de problemas de red y la ciberseguridad.

Verificar Instalación y Listar Interfaces de Red

En este entorno de laboratorio, Tshark y Wireshark están preinstalados para usted. Su primer paso es verificar la instalación e identificar las interfaces de red disponibles para la captura de paquetes. Una interfaz de red es un dispositivo de hardware o virtual que permite que su computadora se conecte a una red.

  1. Primero, verifique que Tshark esté instalado correctamente comprobando su versión. Este comando confirma que la herramienta está disponible en la ruta de su sistema.

    tshark --version

    Debería ver una salida que muestre los números de versión de Tshark y Wireshark.

    TShark (Wireshark) 4.2.x (Git v4.2.x packaged as 4.2.x-1)
    ...
  2. A continuación, necesita saber qué interfaces de red puede utilizar para capturar paquetes. Utilice la bandera -D para listar todas las interfaces disponibles.

    tshark -D

    La salida listará las interfaces por número y nombre.

    1. eth0
    2. any (Pseudo-dispositivo que captura en todas las interfaces)
    3. lo (Loopback)
    4. ...
    • eth0 es típicamente la interfaz Ethernet principal, común en máquinas virtuales y servidores. La usaremos para capturas en vivo.
    • lo es la interfaz de loopback, utilizada para la comunicación de red dentro de la misma máquina.
    • any es un pseudo-dispositivo especial que le permite capturar tráfico de todas las interfaces a la vez.

Ahora que ha confirmado la instalación e identificado la interfaz eth0, está listo para comenzar a capturar paquetes.

Realizar una Captura Básica de Paquetes

Con la interfaz de red identificada, ahora puede realizar una captura de paquetes en vivo. Para este ejercicio, capturará un pequeño número de paquetes de la interfaz eth0 para ver Tshark en acción. Esta es una habilidad fundamental para observar la actividad de red en tiempo real.

  1. Para iniciar una captura, debe especificar la interfaz con la bandera -i y el número de paquetes a capturar con la bandera -c (count/conteo). Ejecute el siguiente comando para capturar 10 paquetes de la interfaz eth0.

    tshark -i eth0 -c 10
  2. Tshark comenzará a capturar paquetes y mostrará un resumen de una línea para cada paquete en tiempo real. La salida se verá similar al ejemplo a continuación, mostrando información como el número de paquete, la marca de tiempo, las direcciones IP de origen y destino, el protocolo y un breve resumen.

     1 0.000000000 172.17.0.2 -> 172.17.0.1 DNS 79 Standard query 0x1a34 AAAA metadata.google.internal
     2 0.000293393 172.17.0.1 -> 172.17.0.2 DNS 111 Standard query response 0x1a34 No such name
     3 0.000408893 172.17.0.2 -> 172.17.0.1 DNS 79 Standard query 0x2b1f A metadata.google.internal
     4 0.000564893 172.17.0.1 -> 172.17.0.2 DNS 111 Standard query response 0x2b1f No such name
     ...

Después de capturar 10 paquetes, Tshark se detendrá automáticamente. Ahora ha capturado y visto con éxito tráfico de red en vivo desde la línea de comandos.

Analizar un Archivo de Captura con Tshark

Además de capturar tráfico en vivo, una tarea común es analizar archivos de captura de paquetes guardados previamente. Estos archivos, típicamente con extensión .pcap, permiten el análisis sin conexión. Se proporciona un archivo de ejemplo llamado capture.pcap en su directorio de proyecto.

  1. Primero, use el comando ls para confirmar que el archivo capture.pcap existe en su directorio actual (/home/labex/project).

    ls -l capture.pcap
  2. Para leer paquetes de este archivo, use la bandera -r (read/leer). Veamos los primeros 10 paquetes del archivo.

    tshark -r capture.pcap -c 10
  3. Inspeccionar manualmente todos los paquetes es ineficiente. Tshark le permite usar filtros de visualización para mostrar solo los paquetes que coinciden con criterios específicos. Use la bandera -Y para aplicar un filtro de visualización. Filtremos solo el tráfico TCP.

    tshark -r capture.pcap -Y "tcp" -c 5

    Este comando lee desde capture.pcap, aplica el filtro de visualización tcp y muestra solo los primeros 5 paquetes coincidentes.

  4. Ahora, intente filtrar por un protocolo diferente, como UDP.

    tshark -r capture.pcap -Y "udp" -c 5

    Ahora solo verá paquetes UDP del archivo de captura. Los filtros de visualización son una característica poderosa para enfocar su análisis en protocolos, direcciones o puertos específicos.

Filtrar y Guardar una Captura en Vivo

En este paso, combinará la captura, el filtrado y el guardado. En lugar de guardar todo el tráfico, puede aplicar un filtro de captura para guardar solo los paquetes que le interesan. Esto es eficiente para crear conjuntos de datos específicos. Capturaremos solo tráfico DNS y lo guardaremos en un nuevo archivo.

  1. Para guardar una captura, use la bandera -w (write/escribir). Para aplicar un filtro de captura, use la bandera -f. DNS típicamente usa el puerto UDP 53, por lo que usaremos "port 53" como nuestro filtro de captura.

    Ejecute el siguiente comando para capturar 10 paquetes DNS y guardarlos en un archivo llamado dns_traffic.pcap.

    tshark -i eth0 -c 10 -f "port 53" -w dns_traffic.pcap

    A diferencia de una captura normal, este comando no imprimirá paquetes en la pantalla. En su lugar, mostrará un conteo continuo de paquetes capturados hasta que alcance los 10.

  2. Una vez completada la captura, verifique que se haya creado el nuevo archivo.

    ls -l dns_traffic.pcap
  3. Ahora, puede inspeccionar su nuevo archivo de captura filtrado para confirmar que solo contiene el tráfico que deseaba.

    tshark -r dns_traffic.pcap

    La salida debería mostrar solo paquetes DNS (u otro tráfico en el puerto 53), confirmando que su filtro de captura funcionó correctamente.

Analizar Paquetes con la Interfaz Gráfica de Wireshark

Si bien Tshark es excelente para el trabajo en la línea de comandos, la interfaz gráfica de usuario (GUI) de Wireshark proporciona un entorno visual potente para el análisis profundo de paquetes. En este paso, utilizará la GUI de Wireshark para inspeccionar el archivo capture.pcap.

  1. Inicie Wireshark y abra el archivo capture.pcap con el siguiente comando. El & al final ejecuta la aplicación en segundo plano, liberando su terminal.

    wireshark capture.pcap &
  2. Se abrirá la ventana de Wireshark. Tómese un momento para familiarizarse con el diseño principal:

    • Panel de Lista de Paquetes (Superior): Una lista de todos los paquetes en la captura.
    • Panel de Detalles del Paquete (Medio): Una vista detallada y expandible de las capas de protocolo para el paquete seleccionado.
    • Panel de Bytes del Paquete (Inferior): Los datos sin procesar del paquete seleccionado, mostrados en hexadecimal y ASCII.
  3. La GUI facilita el filtrado. Localice la barra de filtro de visualización en la parte superior de la ventana (puede tener como texto de marcador de posición "Apply a display filter..."). Escriba http en esta barra y presione Enter.

    http
  4. El panel de Lista de Paquetes ahora se actualizará para mostrar solo los paquetes HTTP del archivo de captura. Puede hacer clic en cualquier paquete para explorar sus detalles en el panel central.

  5. Cierre la ventana de Wireshark cuando haya terminado de explorar.

Resumen

En este laboratorio, adquirió experiencia práctica con el conjunto de herramientas de Wireshark. Aprendió a verificar una instalación de Tshark e identificar las interfaces de red disponibles. Practicó la captura de tráfico de red en vivo usando tshark, la lectura desde archivos .pcap existentes y la aplicación de filtros tanto de captura como de visualización para aislar protocolos específicos. También aprendió a guardar una captura filtrada en un nuevo archivo. Finalmente, se le introdujo a la interfaz gráfica de usuario de Wireshark para un enfoque más visual del análisis de paquetes. Estas habilidades son esenciales para cualquier persona involucrada en la administración de redes, la solución de problemas o la seguridad.