Saltar al contenido

Wireshark a fondo: análisis de tráfico de red para profesionales

    Herramientas de Kali Linux | unfantasmaenelsistema.com

    Cuando Gerald Combs lanzó Wireshark en 1998 (originalmente llamado Ethereal), probablemente no imaginaba que se convertiría en la herramienta de análisis de red más usada del mundo, descargada más de 40 millones de veces al año y presente en prácticamente todos los cursos de certificación de redes y seguridad. Hoy es parte central del toolkit de cualquier administrador de sistemas, ingeniero de redes o profesional de seguridad.

    Wireshark es mucho más que un «sniffer». Es un analizador de protocolos de red que entiende más de 3.000 protocolos: descompone cada paquete en sus campos exactos, reconstruye conversaciones TCP, descifra TLS si tienes las claves, exporta objetos transferidos por HTTP o SMB, y genera estadísticas que permiten entender el comportamiento completo de una red con una sola captura.

    En este artículo vamos a ir mucho más allá del «abrir Wireshark y ver paquetes». Cubriremos la arquitectura interna, la diferencia fundamental entre los dos tipos de filtros, el análisis en detalle de los protocolos más importantes, las estadísticas avanzadas, y el uso desde línea de comandos con tshark. Al final tendrás un workflow completo para analizar cualquier captura de forma sistemática.

    1. Arquitectura interna: cómo funciona Wireshark

    Antes de capturar el primer paquete, vale la pena entender qué hay debajo de la interfaz gráfica. Wireshark tiene una arquitectura en capas donde cada nivel tiene una responsabilidad clara.

    El componente más importante para el rendimiento es libpcap (en Linux/macOS) o Npcap (en Windows). Esta librería aplica los filtros BPF directamente en el kernel, antes de que los datos suban al espacio de usuario. Significa que si defines un filtro de captura, los paquetes que no coinciden nunca llegan a Wireshark: se descartan en el propio kernel. Esto es crucial para capturas largas en redes de alta velocidad.

    Los disectores son los módulos que entienden cada protocolo. Cuando Wireshark recibe un paquete, lo pasa por una cadena de disectores: primero el de Ethernet, luego el de IP, luego el de TCP, y finalmente el del protocolo de aplicación (HTTP, DNS, TLS…). Cada disector extrae los campos específicos de su protocolo y los presenta en el árbol de detalle.

    1.1 Formatos de captura soportados

    Wireshark lee y escribe docenas de formatos de captura. El formato nativo moderno es .pcapng (PCap Next Generation), que soporta múltiples interfaces, comentarios, y metadatos por paquete. El formato .pcap clásico sigue siendo el más compatible con otras herramientas como tcpdump, Zeek o Snort.

    • pcap / pcapng: el estándar universal de capturas de red.
    • cap: usado por herramientas de Microsoft Network Monitor.
    • etl: Event Trace Log de Windows (captura del sistema operativo).
    • snoop: formato de Sun Microsystems.
    • NetFlow / IPFIX: capturas de flujo (Wireshark puede leer algunos formatos).

    2. Filtros: la habilidad más importante

    Dominar los filtros es lo que separa a alguien que «abre Wireshark» de alguien que lo usa. Hay dos tipos completamente distintos, con sintaxis diferente, que se aplican en momentos diferentes y tienen efectos muy distintos. Confundirlos es el error más común.

    2.1 Filtros de captura (BPF)

    Los filtros de captura usan la sintaxis BPF (Berkeley Packet Filter), la misma que usa tcpdump. Se configuran antes de iniciar la captura en Captura → Opciones. Son los más eficientes porque el kernel descarta los paquetes que no coinciden antes de que lleguen a Wireshark: ahorran CPU, RAM y espacio en disco.

    2.2 Filtros de visualización

    Los filtros de visualización tienen su propia sintaxis, más expresiva y orientada a campos de protocolo. Se escriben en la barra de filtro de la parte superior de Wireshark. No descartan paquetes: simplemente ocultan los que no coinciden. Quitar el filtro los devuelve todos.

    3. Análisis de protocolos en detalle

    3.1 TCP: entender el flujo de una conexión

    TCP es el protocolo sobre el que corre la mayoría del tráfico de interés: HTTP, HTTPS, SSH, SMTP, FTP. Entender cómo Wireshark presenta el estado de una conexión TCP es fundamental para diagnosticar problemas y detectar comportamientos anómalos.

    Wireshark tiene un motor de análisis TCP que detecta automáticamente problemas y los resalta. En la columna Info verás etiquetas como [TCP Retransmission], [TCP ZeroWindow], [TCP Out-Of-Order] o [TCP Dup ACK]. Para ver todos los paquetes con problemas TCP detectados, usa el filtro: tcp.analysis.flags.

    3.2 DNS: el protocolo que lo revela todo

    DNS es uno de los protocolos más informativos desde el punto de vista del análisis de seguridad. Las consultas DNS son el primer paso de prácticamente cualquier comunicación de red, y viajan mayoritariamente en texto claro (UDP puerto 53). Incluso con tráfico HTTPS cifrado, las consultas DNS revelan qué dominios está consultando cada host.

    3.3 TLS: analizar tráfico cifrado

    La mayor parte del tráfico web actual está cifrado con TLS. Wireshark puede analizar el handshake TLS y extraer metadatos valiosos incluso sin descifrar el contenido. En particular, el campo SNI (Server Name Indication) en el Client Hello revela el dominio de destino en texto claro, incluso en conexiones HTTPS.

    3.4 HTTP: reconstruir el tráfico web

    HTTP en texto claro (sin TLS) es completamente transparente para Wireshark: puedes ver cabeceras, cuerpos de petición y respuesta, cookies, y reconstruir archivos transferidos. Aunque el HTTPS generalizado ha reducido la superficie de análisis en claro, el HTTP sigue siendo frecuente en redes internas, IoT, y aplicaciones legacy.

    4. Estadísticas avanzadas

    El menú Estadísticas de Wireshark es enormemente potente y frecuentemente infrautilizado. Antes de analizar paquete a paquete, una pasada por las estadísticas da una visión de alto nivel que puede orientar toda la investigación.

    4.1 La gráfica de IO: detectar anomalías temporales

    La gráfica de IO (Estadísticas → Gráfica de IO) muestra el ancho de banda en el tiempo. Puedes superponer varias líneas con diferentes filtros: por ejemplo, una línea para el tráfico total y otra solo para peticiones DNS, o una línea para tráfico TCP y otra para retransmisiones. Los picos anómalos o los patrones periódicos perfectos (indicativos de un beacon de malware) son inmediatamente visibles.

    4.2 Conversaciones y endpoints

    La vista de Conversaciones (Estadísticas → Conversaciones) lista todos los flujos TCP o UDP activos en la captura, ordenables por bytes, paquetes o duración. Desde aquí puedes hacer clic derecho en cualquier conversación para aplicarla como filtro de visualización directamente, lo que es mucho más rápido que escribir el filtro manualmente.

    5. Seguir streams: reconstruir conversaciones completas

    La función «Seguir stream» es una de las más útiles de Wireshark. Reconstruye el contenido completo de una conversación TCP, UDP o HTTP a partir de todos sus paquetes, y lo presenta en un formato legible. Es especialmente potente para ver el contenido de comunicaciones HTTP en claro.

    Para acceder: clic derecho en cualquier paquete → Seguir → Flujo TCP / Flujo HTTP / Flujo TLS. El flujo TLS solo muestra datos descifrados si tienes configurado el archivo de claves. El flujo HTTP reconstruye petición y respuesta aunque estén fragmentadas en múltiples paquetes TCP.

    5.1 Exportar objetos de la captura

    Una de las funciones menos conocidas pero más potentes es la exportación de objetos. Wireshark puede reconstruir y exportar archivos completos que fueron transferidos durante la captura, incluso si estaban fragmentados en cientos de paquetes TCP.

    • Archivo → Exportar objetos → HTTP: imágenes, HTML, JavaScript, archivos descargados, formularios POST.
    • Archivo → Exportar objetos → SMB/SMB2: archivos compartidos por Windows file sharing.
    • Archivo → Exportar objetos → TFTP: archivos transferidos por TFTP (común en configuración de red).
    • Archivo → Exportar objetos → DICOM: imágenes médicas (en entornos sanitarios).

    6. tshark: Wireshark en la línea de comandos

    tshark es la versión de línea de comandos de Wireshark. Usa exactamente los mismos disectores y filtros, pero sin interfaz gráfica. Es imprescindible para capturas automatizadas en servidores, procesado por scripts, integración en pipelines, o cuando no hay entorno gráfico disponible.

    7. Coloreado, perfiles y personalización

    7.1 Reglas de coloreado

    Wireshark colorea los paquetes según reglas predefinidas. Entender el esquema de colores acelera enormemente el análisis visual, porque los problemas TCP o el tráfico inusual destacan inmediatamente sin necesidad de aplicar filtros.

    7.2 Perfiles y personalización

    Los perfiles de Wireshark permiten guardar configuraciones completas: columnas personalizadas, reglas de coloreado, preferencias de protocolo. Puedes tener un perfil para análisis web, otro para análisis forense, otro para auditoría de red, y cambiar entre ellos en segundos desde Edición → Perfiles de configuración.

    8. Detección de anomalías y patrones de ataque

    Con los filtros y las estadísticas dominados, Wireshark se convierte en una herramienta de detección de comportamientos anómalos. La siguiente tabla resume los patrones de ataque más comunes y cómo identificarlos con filtros específicos.

    8.1 Workflow completo de análisis de una captura sospechosa

    9. Referencia rápida: atajos de teclado

    Conclusión

    Wireshark es una de esas herramientas que cuanto más la usas, más descubres que hay dentro. La curva de aprendizaje inicial es suave: capturar y ver paquetes es inmediato. Pero dominarla de verdad —filtros avanzados, análisis de protocolos, estadísticas, tshark para automatización— lleva tiempo y práctica.

    La clave para progresar rápido es practicar con capturas reales. La wiki de Wireshark tiene cientos de capturas de muestra de todo tipo de protocolos y escenarios. El sitio Malware Traffic Analysis tiene capturas reales de infecciones de malware con los IOCs explicados, lo que permite ver exactamente qué aspecto tiene un beacon de Cobalt Strike o una infección de Emotet en el tráfico de red.

    El siguiente escalón natural después de Wireshark es Zeek (antes Bro): un framework de análisis de red que automatiza la extracción de logs de alto nivel a partir de capturas, y Suricata, un IDS/IPS que puede analizar tráfico en tiempo real con reglas de detección. Pero ambos se vuelven mucho más fáciles de entender cuando ya tienes el nivel de Wireshark que hemos cubierto en este artículo.

    unfantasmaenelsistema.com | Seguridad, sistemas y todo lo que no debería funcionar (pero funciona)

    Resumen de privacidad

    Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.