← Volver al Cheatsheet

Apuntes de Wireshark

🔍 Filtrado:

Analizar tráfico sin filtros es imposible. Hay dos tipos de filtros:

Filtros de captura (Capture Filters)

Se aplican antes de empezar a capturar, sirven para reducir el tamaño del archivo de captura, descartando el tráfico que no te interesa. Usan una sintaxis diferente (BPF).

Filtros de pantalla (Display Filters)

Se aplican después de capturar, en la barra verde de arriba, no eliminan paquetes, solo ocultan los que no cumplen el criterio. Es lo que más usarás como analista.

Operadores Lógicos

⚙️ Filtros de pantalla utiles

Por IP

Por protocolo

Por puerto (TCP o UDP)

Por flags de TCP (detectar escaneos)

🚀 Trucos prácticos para Analistas

Seguir un flujo (Follow TCP Stream)

Permite reconstruir una conversación completa (ej. una sesión web HTTP).

  1. En la lista de paquetes, busca una conversación que te interese (ej. un paquete HTTP).
  2. Haz clic derecho sobre el paquete.
  3. Selecciona Follow > TCP Stream.
  4. Se abrirá una nueva ventana con toda la conversación reensamblada en texto plano.

Exportar objetos (Ej. Ficheros de una web)

Si en el tráfico que analizas se ha descargado un fichero a través de HTTP (sin cifrar), puedes extraerlo directamente desde Wireshark.

  1. Ve al menú File > Export Objects > HTTP...
  2. Wireshark te mostrará una lista de todos los ficheros (imágenes, ejecutables, etc.) que ha encontrado en el tráfico.
  3. Selecciona el que te interese y haz clic en "Save As".

Ejemplos para Threat Hunting

1. Buscar peticiones HTTP POST

Útil para ver qué datos se están enviando desde un equipo hacia un servidor web (posible exfiltración de datos).

http.request.method == "POST"

2. Detectar un posible escaneo de puertos (Nmap SYN Scan)

Un atacante envía muchos paquetes SYN a diferentes puertos para ver cuáles están abiertos, un equipo normal no haría esto.

tcp.flags.syn == 1 and tcp.flags.ack == 0 and tcp.window_size <= 1024

3. Ver todas las consultas DNS

Muy útil para detectar comunicaciones C2 de DNS.

dns.qry.name

4. Encontrar credenciales en texto plano (FTP/HTTP Basic Auth)

Busca paquetes que contengan la palabra "password" o "pass", solo funciona en protocolos sin cifrar, algo no tan raro aún.

tcp contains "password" or tcp contains "pass"