Capturando paquetes con Tcpdump y analiz√°ndolos con Wireshark en Ubuntu

Acceso al host 2 con SSH

En esta guía, le mostraré cómo analizar paquetes de red en Linux. Usaré las Herramientas Tcpdump y Wireshark. Este tutorial usa Ubuntu como sistema operativo, pero también es aplicable a otras distribuciones de Linux.

¬ŅPor qu√© necesita Tcpdump?

Una pregunta obvia que puede surgir es por qu√© preocuparse por Tcpdump cuando puede hacer casi todo con Wireshark. Bueno, aqu√≠ est√° la respuesta para esto: a veces es m√°s conveniente usar Tcpdump para la captura de paquetes en comparaci√≥n con Wireshark. Por ejemplo, si la m√°quina de destino en la que est√° capturando el paquete es una remota sin Wireshark instalado o es simplemente una m√°quina remota sin interfaz, en ambos casos, Tcpdump es muy √ļtil. Para ver varias opciones que se pueden usar con Tcpdump, busque las p√°ginas man.

¬ŅQu√© es Tcpdump?

Tcpdump es una alternativa de línea de comandos a Wireshark. Tiene el mismo propósito que Wireshark, que captura y analiza el tráfico. Tcpdump es una aplicación separada y no debe considerarse como una interfaz de línea de comandos de Wireshark. Dado que se basa en la interfaz de línea de comandos, no es tan fácil de manejar como Wireshark. Los nuevos usuarios pueden encontrarlo desalentador al principio cuando comienzan a usarlo y pueden encontrar muchos comandos y sintaxis difíciles de recordar.

Esquema de este tutorial

Pasemos ahora al prop√≥sito principal de esta gu√≠a. En esta gu√≠a, veremos c√≥mo podemos interactuar Tcpdump con Wireshark. Aqu√≠ estamos se√Īalando el trabajo que vamos a hacer en esta gu√≠a:

  1. Conexión con la máquina remota (Host 2) con SSH.
  2. Capturando tr√°fico con Tcpdump y guardando el Capture.
  3. Enviar el archivo de captura a la m√°quina en el sitio (Host 1) en la que est√° instalado Wireshark.
  4. Uso de Wireshark para analizar la sesión de Tcpdump capturada.

Comprobación previa al vuelo

Para este tutorial, estamos usando dos máquinas con Ubuntu 20.04. Necesita configurarlos por su cuenta. Nuestra configuración de IP es la siguiente:

Anfitrión 1 (máquina en el sitio): 192.168.186.150

Anfitrión 2 (Máquina remota): 192.168.186.201

Se supone que los pasos mencionados en esta guía funcionan en cualquier sistema Linux que cumpla los siguientes requisitos:

  1. Host en el sitio (Host 1) con Wireshark instalado y SSH configurado.
  2. Acceso SSH desde el host en el sitio (Host 1) al host remoto (Host 2).
  3. Tcpdump y SSH configurados en el host remoto (Host 2).
  4. Cuenta de usuario ‘sudo’ en el Host 2 para ejecutar Tcpdump y tambi√©n en el Host 1 (depende de c√≥mo est√© configurado Wireshark).

Vamos a empezar…

Para continuar, conéctese desde su máquina en el sitio (Host 1) a la máquina remota (Host 2) con el protocolo de acceso SSH. Ya hemos configurado la conexión SSH entre las dos máquinas. Así que usaremos el siguiente comando desde el terminal Host 1 para conectarnos al Host 2:

$ ssh ‘nombre_usuario’@’IP_of_Host2’

Aqu√≠ reemplace ‘user_name’ con el nombre de usuario del Host 2 al que nos estamos conectando y ‘IP_of_Host2’ es la direcci√≥n IP del Host 2. Vea la imagen a continuaci√≥n como referencia:

Acceso al host 2 con SSH
Ahora verifique las interfaces disponibles en la m√°quina remota en las que Tcpdump puede capturar. Para esto usa el comando:

$ tcpdump –lista-interfaces

Salida de muestra:

1.enp0s3 [Up, Running]
2.lo [Up, Running, Loopback]
3.any (pseudodispositivo que captura en todas las interfaces) [Up, Running]
4.eno1 [Up]
5. monitor bluetooth (monitor Bluetooth Linux) [none]
6.nflog (interfaz de registro de netfilter de Linux (NFLOG)) [none]
7.nfqueue (interfaz de cola de filtro de red de Linux (NFQUEUE)) [none]
8.bluetooth0 (adaptador Bluetooth n√ļmero 0) [none]

Listado de interfaces
Como puede ver, la interfaz ‘enpos3’ est√° funcionando. As√≠ que configur√©moslo como la interfaz de destino y ejecutemos el comando tcpdump aqu√≠. Cuando sienta que ha capturado suficientes paquetes, simplemente presione ‘Ctrl+c’ para finalizar la captura de paquetes. El comando es:

$ sudo tcpdump -s 65535 -i enp0s3 -w my_remote_capture.pcap

Ejecutando el comando Tcpdump
En el comando anterior, hemos usado las siguientes opciones con Tcpdump:

  1. -s: Las versiones anteriores de Tcpdump cortan los paquetes a 68 o 96 bytes. La opci√≥n ‘-s’ se utiliza para capturar paquetes de longitud completa.
  2. -i: Selecciona la interfaz a escuchar.
  3. -w: guarda los paquetes sin procesar capturados en un archivo en lugar de mostrarlos en la terminal.

El tr√°fico capturado se almacena en el archivo llamado ‘my_remote_capture.pcap’. Ahora transferiremos este archivo al Host 1 para su an√°lisis con Wireshark. Para transferir el archivo, estamos usando el comando ‘scp’. Nuevamente, ya hemos configurado ‘scp’ para que funcione entre las dos m√°quinas. La sintaxis del comando es como se muestra a continuaci√≥n:

$ scp my_remote_capture.pcap ‘username’@’IP_of_remote_machine’:Publicidad

Aqu√≠ ‘nombre de usuario’ es el nombre del usuario en el Host 1 y ‘IP_of_remote_machine’ tambi√©n es la IP del Host 1.

Transferir el archivo de captura usando SCP
En la máquina in situ (Host 1), compruebe si ha recibido el archivo. En nuestro caso, hemos recibido correctamente el archivo y lo abriremos usando Wireshark como se muestra a continuación:

Abriendo el archivo Capture usando Wireshark
Aquí está la captura de pantalla del archivo de captura del Host 1:

Capturar archivo del Host 1

An√°lisis del archivo de captura

Apliquemos un filtro de visualizaci√≥n en el archivo anterior. Dado que est√°bamos conectados al Host 2 mediante SSH, deber√≠a haber algunos rastros del protocolo SSH. En el campo de texto correspondiente al filtro de visualizaci√≥n, ingrese ‘ssh’: Anuncio

Aplicar el filtro de visualización
En la imagen de arriba, podemos ver solo los paquetes con el protocolo ‘SSH’.

Terminando…

Felicitaciones, finalmente hemos demostrado cómo podemos hacer una captura remota en una máquina. Hemos visto cómo podemos combinar Tcpdump con Wireshark.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *