Parte: 1 — Redes y seguridad de redes · Fuente: Practical Packet Analysis, C. Sanders ⏱️ Duración estimada: 120 min · Nivel: Fundamentos
Dominar el lenguaje de filtros de visualización de Wireshark, el seguimiento de flujos (Follow Stream) y las herramientas estadísticas para pasar de miles de paquetes a una respuesta en segundos. El alumno aprenderá a formular preguntas precisas sobre una captura y a responderlas con expresiones y vistas agregadas.
Al finalizar, el alumno podrá:
tshark para procesamiento por lotes.| # | Tema | Por qué importa |
|---|---|---|
| 1 | Sintaxis de filtros de visualización | Es el bisturí del análisis |
| 2 | Operadores y campos de protocolo | Precisión al aislar tráfico |
| 3 | Follow TCP/UDP/HTTP/TLS Stream | Ver la conversación completa |
| 4 | Estadísticas: Conversations y Endpoints | Quién habla y cuánto |
| 5 | Jerarquía de protocolos | Composición del tráfico |
| 6 | Expert Information | Retransmisiones, dup ACK, resets |
| 7 | I/O Graph y RTT | Rendimiento y latencia |
| 8 | tshark para filtros por lote |
Escalar el análisis |
ip.addr == 10.0.0.5 && tcp.port == 443). No altera la captura, solo la vista.tcp.stream o udp.stream. Follow Stream reensambla su carga útil.tshark.bash
sudo tcpdump -i eth0 -w /tmp/lab027.pcapng &
curl http://192.168.56.101/ ; dig @192.168.56.1 example.com ; ping -c3 192.168.56.1
sudo pkill tcpdump
lab027.pcapng. Aplica el filtro dns y observa consultas y respuestas.http.request.method == "GET".ip.addr == 192.168.56.101 && tcp.flags.syn == 1 && tcp.flags.ack == 0 para ver intentos de conexión salientes.tcp.stream asociado.tcp.analysis.retransmission) y dup ACKs.tcp.analysis.retransmission para visualizar picos de pérdida.Repite un filtro en consola:
bash
tshark -r /tmp/lab027.pcapng -Y 'http.request' -T fields -e ip.src -e http.host -e http.request.uri
tls.handshake.type == 1).tcp.analysis.flags para listar todos los eventos de análisis de la captura.Server: de la respuesta de un sitio.tcp.analysis.ack_rtt.tshark -r lab027.pcapng -q -z endpoints,ip.Dada una captura con al menos 5 conversaciones, entrega un informe corto (media página) que identifique: la conversación con más bytes, el número de retransmisiones totales, el protocolo de aplicación dominante y una captura de pantalla del I/O Graph. Adjunta también el comando tshark que usaste para verificar el conteo de retransmisiones.
Criterio de aceptación: los números del informe coinciden con los que el revisor obtiene al aplicar tcp.analysis.retransmission y abrir la tabla de Conversaciones sobre la misma captura.
| Síntoma / mensaje | Causa y cómo arreglar |
|---|---|
| Campo del filtro en rojo | Sintaxis o nombre de campo inválido; consulta el Display Filter Reference |
| Follow Stream muestra basura | Es tráfico cifrado (TLS); necesitas las claves de sesión para descifrar |
| Muchas "retransmisiones" falsas | Capturaste en el emisor con offloading; puede ser reordenamiento, no pérdida real |
| Estadísticas vacías | Tienes un filtro de visualización que no aplicaste o "Limit to display filter" activo sin coincidencias |
tshark no encuentra campos |
Nombre de campo mal escrito; usa tshark -G fields \| grep <nombre> |
❓ ¿ip.addr == x o ip.src == x?
ip.addr coincide si x es origen o destino; ip.src/ip.dst fijan la dirección. Ojo con la negación: usa !(ip.addr == x) en lugar de ip.addr != x.
❓ ¿Puedo descifrar TLS en Follow Stream?
Sí, si dispones del archivo de claves (variable SSLKEYLOGFILE en el cliente) o de la clave privada RSA sin PFS. Se configura en Preferencias → Protocols → TLS.
❓ ¿Qué diferencia hay entre Conversations y Endpoints? Conversations agrupa por pares (A↔B); Endpoints agrupa por host individual con su total de tráfico.
❓ ¿Cómo cuento paquetes que cumplen un filtro sin abrir la GUI?
tshark -r archivo.pcapng -Y 'filtro' \| wc -l, o mejor -q -z io,stat,0,'COUNT(frame)filtro'.
Clase 026 — Wireshark: captura y análisis de paquetes
Clase 028 — tcpdump y captura de tráfico en línea de comandos