Introducción
En este laboratorio, aprenderás cómo utilizar los filtros de captura de Wireshark para capturar de forma selectiva el tráfico de red según criterios específicos. Los filtros de captura son herramientas potentes que te permiten centrarte en los datos relevantes y eliminar el tráfico irrelevante, lo que hace que tu análisis sea más eficiente.
Explorarás diferentes expresiones de filtros de captura y las aplicarás a escenarios del mundo real. Esta experiencia práctica mejorará tus habilidades en la resolución de problemas de red y el análisis de seguridad.
Comprender la sintaxis de los filtros de captura
En el mundo del análisis de redes, manejar una gran cantidad de datos puede resultar abrumador. Ahí es donde los filtros de captura de Wireshark son útiles. Los filtros de captura te permiten recopilar solo paquetes específicos que coincidan con tus criterios. Esto reduce significativamente el volumen de datos que necesitas analizar. Es importante tener en cuenta que los filtros de captura son diferentes de los filtros de visualización. Los filtros de visualización se utilizan para filtrar paquetes ya capturados, mientras que los filtros de captura funcionan durante el proceso de captura de paquetes.
¿Qué son los filtros de captura?
Los filtros de captura utilizan la sintaxis del Berkeley Packet Filter (BPF). El BPF es un lenguaje especializado diseñado para filtrar paquetes de red antes de que sean procesados por aplicaciones como Wireshark. Al aplicar estos filtros, se pueden lograr varios objetivos importantes:
- Reducir la cantidad de datos capturados: En lugar de capturar todo el tráfico de red, puedes centrarte en las partes relevantes, lo que ahorra espacio de almacenamiento y potencia de procesamiento.
- Centrarse en tipos específicos de tráfico: Puedes apuntar a tipos particulares de actividad de red, como solicitudes HTTP o conexiones SSH.
- Mejorar el rendimiento durante la captura de paquetes: Con menos datos que manejar, el proceso de captura de paquetes se vuelve más rápido y eficiente.
- Simplificar el análisis posterior: Cuando tienes un conjunto de datos más pequeño y relevante, es mucho más fácil analizar y sacar conclusiones.
Sintaxis básica de los filtros de captura
Los filtros de captura en Wireshark utilizan una sintaxis específica basada en el lenguaje de filtro de libpcap. Echemos un vistazo a algunos elementos comunes:
host: Este elemento filtra el tráfico basado en la dirección IP o el nombre de host. Por ejemplo, si utilizas el filtrohost 192.168.0.2, Wireshark capturará todo el tráfico hacia o desde la dirección IP especificada.net: Filtra el tráfico basado en una dirección de red y una máscara de subred. Por ejemplo, el filtronet 10.0.0.0/24capturará el tráfico de la red 10.0.0.0/24.port: Filtra el tráfico basado en el número de puerto. Por ejemplo,port 80se utiliza para capturar tráfico HTTP porque HTTP normalmente utiliza el puerto 80.protocol: Filtra el tráfico basado en el protocolo. Por ejemplo,tcpcapturará todo el tráfico TCP, yudpcapturará todo el tráfico UDP.
Puedes combinar estos elementos utilizando operadores lógicos:
ando&&: Cuando utilizas este operador, ambas condiciones deben ser verdaderas para que un paquete sea capturado.oro||: Con este operador, cualquiera de las condiciones puede ser verdadera para que un paquete sea capturado.noto!: Este operador niega una condición. Entonces, si utilizasnot tcp, capturará todo el tráfico no TCP.
Practiquemos con un filtro sencillo
Ahora, pongamos en práctica lo que hemos aprendido. Sigue estos pasos para abrir Wireshark y aplicar un filtro de captura básico:
Primero, necesitas abrir una terminal. Puedes hacer esto haciendo clic en el icono de la terminal en la barra de tareas del escritorio o presionando
Ctrl+Alt+T.Una vez que la terminal esté abierta, escribe el siguiente comando para iniciar Wireshark:
wiresharkCuando se abra Wireshark, verás la pantalla principal de inicio. Esta pantalla muestra todas las interfaces de red disponibles en tu sistema.
Busca el campo de entrada "Capture Filter:" en la parte superior de la ventana de Wireshark. Aquí es donde ingresarás tu filtro de captura.

Escribe
tcpen el cuadro de filtro. Al hacer esto, estás indicando a Wireshark que capture solo paquetes TCP.De la lista de interfaces, elige la etiquetada como
any. Seleccionaranysignifica que Wireshark capturará paquetes en todas las interfaces de red.Haz clic en el botón azul de aleta de tiburón
Start. Esto iniciará el proceso de captura de paquetes con el filtro que has aplicado.
Deja que Wireshark se ejecute durante unos 10 - 15 segundos. Durante este tiempo, capturará algunos paquetes TCP. Deberías comenzar a ver paquetes aparecer en la ventana principal.
Para detener la captura, haz clic en el botón rojo cuadrado
Stopen la barra de herramientas.Ahora, quieres guardar los paquetes capturados para un análisis posterior. Haz clic en
File>Save Asen la barra de menú.En el cuadro de diálogo de guardado de archivos, navega hasta el directorio
/home/labex/project.Ingresa
step1.pcapngcomo nombre de archivo y haz clic enSave.
Ahora has aplicado con éxito un filtro de captura básico para recopilar solo paquetes TCP y has guardado los resultados para un análisis posterior.
Aplicar filtros de captura para tráfico específico
En este paso, nos centraremos en capturar tráfico de red específico. Específicamente, aprenderá cómo aplicar un filtro de captura más específico para capturar tráfico HTTP en el puerto 80. El tráfico HTTP en el puerto 80 es muy común en Internet, ya que se utiliza para la comunicación web sin cifrar. Después de configurar el filtro, utilizará un script para generar algo de tráfico de prueba. Esto le ayudará a ver cómo funciona el filtro en un escenario del mundo real.
Creación de una Nueva Captura con un Filtro Específico
Primero, configuremos una nueva captura con un filtro para el puerto 80. Antes de iniciar una nueva captura, debemos asegurarnos de que no haya capturas anteriores abiertas.
Si todavía tiene la captura anterior abierta, ciérrela haciendo clic en
Archivo>Cerraro haciendo clic en el botónCerrar este archivo de captura(X) en la esquina superior derecha de la lista de paquetes. Este paso es importante porque tener varias capturas abiertas puede causar confusión y afectar la precisión de su nueva captura.
Una vez que haya cerrado la captura anterior, debería ver la pantalla de bienvenida de Wireshark mostrando las interfaces disponibles. Esta pantalla es donde comenzará a configurar su nueva captura.
Utilizaremos un método más detallado para establecer el filtro de captura esta vez. Haga clic en el botón
Opciones de captura(o vaya aCaptura>Opcionesen el menú). El diálogoOpciones de capturale da más control sobre cómo Wireshark captura paquetes, incluyendo la configuración del filtro de captura.
En el diálogo
Opciones de captura, verá una lista de interfaces y un cuadro de entradaFiltro de capturaen la parte inferior. Las interfaces representan las conexiones de red disponibles en su sistema, y el cuadroFiltro de capturaes donde especificará las condiciones para los paquetes que desea capturar.
Haga clic en el cuadro
Filtro de capturae introduzca el filtro:tcp port 80. Este filtro capturará solo tráfico TCP que utilice el puerto 80. Al especificartcp port 80, somos más específicos que simplemente usarport 80: le estamos diciendo a Wireshark que capture solo paquetes TCP relacionados con el tráfico HTTP en este puerto, excluyendo cualquier tráfico UDP que también pudiera usar el puerto 80. Esto es más preciso para el análisis de tráfico HTTP, ya que HTTP típicamente usa TCP como su protocolo de transporte.Alternativamente, puede hacer clic en el botón
Filtro de captura:para seleccionar entre marcadores de filtro guardados. Esto puede ser útil si tiene un conjunto de filtros que utiliza con frecuencia.
En el diálogo de selección de filtro, puede elegir entre filtros predefinidos o crear uno nuevo. Por ahora, simplemente introduzca
port 80directamente en el cuadro de filtro. Esto asegura que estamos capturando el tráfico específico que nos interesa.
Asegúrese de que la interfaz
anyesté seleccionada y haga clic en el botónIniciarpara comenzar a capturar paquetes que coincidan con el filtro. Seleccionaranysignifica que Wireshark capturará paquetes de todas las interfaces de red disponibles.
Generación de Tráfico de Prueba
Ahora que Wireshark está capturando tráfico en el puerto 80, generemos algo de tráfico de prueba para ver el filtro en acción. Esto le ayudará a confirmar que el filtro está funcionando como se espera.
Abra una nueva ventana de terminal haciendo clic en el icono de terminal en la barra de tareas o presionando
Ctrl+Alt+T. La terminal es donde ejecutará comandos para generar el tráfico de prueba.En la nueva terminal, navegue al directorio del proyecto:
cd /home/labex/projectEste comando cambia el directorio de trabajo actual al directorio del proyecto donde se encuentra el script para generar tráfico.
Ejecute el script precreado para generar tráfico HTTP simulado:
./simulate_traffic.shEste script está diseñado para crear un servidor simple escuchando en el puerto 80 y enviarle algunos datos, simulando tráfico HTTP del mundo real.
Debería ver una salida similar a esta:
Netcat server listening on port 80... Sending data to port 80... Please check the Wireshark output for the data sent to port 80.Esta salida indica que el script está funcionando correctamente y que se están enviando datos al puerto 80.
Este script crea un servidor simple escuchando en el puerto 80 y le envía un breve mensaje "Hello, Wireshark!". Este mensaje será capturado por Wireshark si el filtro está funcionando correctamente.
Análisis del Tráfico Capturado
Regrese a la ventana de Wireshark. Debería ver los paquetes que fueron generados por el script. Estos paquetes son el resultado del tráfico de prueba que acabamos de generar.
Estos paquetes deberían mostrar comunicación en el puerto 80, coincidiendo con nuestro filtro de captura. Esto confirma que el filtro está funcionando como se espera.

En la lista de paquetes, debería ver al menos 3 paquetes:
- Paquete TCP SYN para establecer la conexión: Este es el primer paso en el apretón de manos de tres vías de TCP, donde el cliente solicita establecer una conexión con el servidor.
- Paquete TCP SYN-ACK para acusar recibo de la conexión: El servidor responde a la solicitud SYN del cliente, indicando que está listo para establecer una conexión.
- Paquete TCP que contiene los datos "Hello, Wireshark!": Este es el paquete de datos real que contiene el mensaje enviado por el script.
Haga clic en uno de los paquetes para ver sus detalles en el panel central. Puede expandir secciones haciendo clic en los iconos de flecha. Esto le permite ver las diferentes partes del paquete, como las cabeceras y los datos.
Ahora detenga la captura haciendo clic en el botón rojo cuadrado
Deteneren la barra de herramientas. Detener la captura es importante para que pueda comenzar a analizar los paquetes capturados sin que se agreguen nuevos paquetes.Guarde los paquetes capturados haciendo clic en
Archivo>Guardar comoen la barra de menú. Guardar los paquetes le permite consultarlos más tarde para un análisis adicional.Navegue al directorio
/home/labex/projecten el diálogo de guardado de archivos. Este es el directorio donde queremos almacenar los paquetes capturados.Introduzca
step2.pcapngcomo nombre de archivo y haga clic enGuardar. El formato de archivo.pcapnges un formato común para almacenar capturas de paquetes de red.
Ha aplicado con éxito un filtro de captura específico para recopilar solo tráfico en el puerto 80 y ha observado tráfico real que coincide con este filtro.
Analizando el Tráfico Capturado con Filtros de Visualización (Display Filters)
En este paso, vamos a aprender cómo usar los filtros de visualización (display filters) para analizar el tráfico que ya has capturado. Antes de comenzar, es importante comprender la diferencia entre los filtros de captura (capture filters) y los filtros de visualización (display filters). Los filtros de captura (capture filters) se utilizan para decidir qué tráfico se recopila en primer lugar. Los filtros de visualización (display filters), por otro lado, te permiten concentrarte en partes específicas de los paquetes que ya han sido capturados. Son como una lupa para tus datos capturados, que te ayuda a concentrarte en los detalles que te interesan.
Comprendiendo la Diferencia Entre Filtros de Captura (Capture Filters) y de Visualización (Display Filters)
Echemos un vistazo más de cerca a la diferencia entre los filtros de captura (capture filters) y los filtros de visualización (display filters).
- Los filtros de captura (capture filters) se aplican antes de que se registren los paquetes. Utilizan la sintaxis de Berkeley Packet Filter (BPF). Piensa en los filtros de captura (capture filters) como un guardián en la entrada. Deciden qué paquetes pueden entrar y ser capturados.
- Los filtros de visualización (display filters) se aplican a los paquetes que ya han sido capturados. Utilizan la sintaxis propia de Wireshark. Los filtros de visualización (display filters) son como un foco que resalta paquetes específicos entre los que ya han sido capturados.
- Los filtros de visualización (display filters) son más potentes y flexibles que los filtros de captura (capture filters). Te permiten realizar búsquedas y análisis más complejos en los datos capturados.
- Los filtros de visualización (display filters) no reducen la cantidad de datos capturados. Solo controlan lo que se muestra en la interfaz. Por lo tanto, los datos capturados originales permanecen intactos y puedes cambiar el filtro de visualización (display filter) tantas veces como quieras para ver diferentes aspectos de los datos.
Abriendo Tu Archivo Capturado
Ahora, abramos el archivo que contiene los paquetes que capturaste anteriormente.
- Si todavía tienes Wireshark abierto desde el paso anterior, puedes continuar directamente. De lo contrario, abre Wireshark y luego abre el archivo que guardaste en el Paso 2.
- Para abrir un archivo guardado previamente en Wireshark:
- Haz clic en
File>Openen la barra de menú. Esta es una forma común de acceder a los archivos en muchas aplicaciones de software. - Navega al directorio
/home/labex/project. Aquí es donde se almacena el archivo capturado. - Selecciona el archivo
step2.pcapngy haz clic enOpen. El formato de archivo.pcapngse utiliza comúnmente para almacenar datos de paquetes de red.
- Haz clic en
- Después de abrir el archivo, ahora deberías ver los paquetes que capturaste en el Paso 2 mostrados en Wireshark. Estos son los datos que analizaremos utilizando filtros de visualización (display filters).
Aplicando Filtros de Visualización (Display Filters)
A continuación, aplicaremos filtros de visualización (display filters) a los paquetes capturados.
Localiza la barra de herramientas del filtro de visualización (display filter) en la parte superior de la ventana de Wireshark. Esto es diferente del filtro de captura (capture filter) que usaste anteriormente. Tiene un fondo verde claro cuando está activo. La barra de herramientas del filtro de visualización (display filter) es donde ingresarás las expresiones de filtro para mostrar paquetes específicos.
En el campo del filtro de visualización (display filter), escribe
tcpy presiona Enter o haz clic en el botón de la flecha derecha. Al escribirtcp, le estamos diciendo a Wireshark que solo muestre los paquetes que usan el protocolo TCP. Esto mostrará solo los paquetes TCP en la pantalla, filtrando cualquier otro paquete de protocolo si existe.Observa cómo los paquetes se filtran inmediatamente en la pantalla sin necesidad de una nueva captura. Esta es una de las ventajas de usar filtros de visualización (display filters). Puedes analizar rápidamente diferentes aspectos de los datos capturados sin tener que capturar el tráfico nuevamente.
Ahora, probemos un filtro de visualización (display filter) más específico. Borra el filtro actual haciendo clic en el botón
Xen el lado derecho de la barra de filtro. Esto eliminará el filtro anterior y mostrará todos los paquetes capturados nuevamente.Ingresa el siguiente filtro para mostrar los paquetes que contienen la palabra "Wireshark":
frame contains "Wireshark"Este filtro busca la palabra "Wireshark" en los datos del frame (trama) de los paquetes.
Presiona Enter o haz clic en la flecha derecha para aplicar el filtro.

Ahora deberías ver solo los paquetes que contienen el texto "Wireshark", probablemente solo uno o dos paquetes que contienen nuestro mensaje "Hello, Wireshark!". Esto muestra cómo se pueden usar los filtros de visualización (display filters) para encontrar información específica dentro de los paquetes capturados.
Si haces clic en uno de estos paquetes en la lista de paquetes, puedes ver sus detalles en el panel central. Busca la sección "Data" que debería mostrar el texto "Hello, Wireshark!". Esto te permite examinar el contenido de los paquetes con más detalle.
Creando un Reporte (Report)
Ahora que has analizado el tráfico utilizando filtros de visualización (display filters), creemos un informe simple que documente lo que encontraste.
Cuenta el número de paquetes que coinciden con el filtro
frame contains "Wireshark". El número debería mostrarse en la barra de estado en la parte inferior de la ventana de Wireshark, mostrando algo como "Displayed: X of Y packets". Este número representa el número de paquetes que contienen la palabra "Wireshark".Abre una ventana de terminal haciendo clic en el icono de terminal en la barra de tareas o presionando
Ctrl+Alt+T. La terminal es una herramienta poderosa que te permite ejecutar comandos en tu computadora.En la terminal, crea un archivo de informe (report) con la información del conteo de paquetes:
echo "Number of packets matching the filter expression: 1" > /home/labex/project/report.txtNota: Reemplaza
1en el comando anterior con el número real de paquetes que observaste que coinciden con el filtro. Este número puede variar dependiendo de cómo se ejecutó el script.
Ahora has aplicado con éxito filtros de visualización (display filters) para analizar el tráfico de red capturado y has documentado tus hallazgos en un archivo de informe (report).
Resumen
En este laboratorio, has aprendido cómo utilizar los filtros de captura de Wireshark para capturar y analizar selectivamente el tráfico de red según criterios específicos. Has practicado habilidades clave, como comprender la sintaxis básica de los filtros de captura basada en el lenguaje Berkeley Packet Filter, aplicarlos durante capturas en vivo y distinguir entre filtros de captura y filtros de visualización.
Estas habilidades son cruciales para administradores de red, analistas de seguridad y profesionales de TI que se ocupan de problemas de red o incidentes de seguridad. Dominar los filtros de captura permite un análisis de red más eficiente al centrarse en el tráfico relevante. A medida que avanzes en el análisis de redes, puedes basarte en estas habilidades para crear filtros complejos para la selección de tráfico sofisticado en entornos complejos.


