Leer lo que
la red dejó salir
Reconoce un canal encubierto, extrae los datos de una captura y corre una jornada priorizando por puntos. El diferenciador en jeopardy no es el payload: es el método.
Taxonomía operativa de canales de exfiltración · cheat-sheet de tshark/Wireshark/scapy para reconstruir datos · una flag extraída de un PCAP real alojado aquí · y una jornada cronometrada con hoja de priorización y postmortem.
Canales encubiertos · qué buscar
Exfiltrar es sacar datos por un canal que no levanta alarmas. En análisis (que es el lado que te toca en jeopardy) tu trabajo es el inverso: reconocer el canal por sus artefactos y reconstruir lo que viajó. Concepto, no receta de ataque a terceros.
| Canal | Cómo se ve en la red | Indicador que lo delata | Herramienta de análisis |
|---|---|---|---|
| DNS tunneling | Consultas a subdominios largos y de alta entropía bajo un mismo dominio | Volumen anómalo de TXT/A, labels codificados (hex/base32), un solo dominio autoritativo | tshark -Y dns, campo dns.qry.name |
| ICMP | Echo request/reply con payload inusualmente grande o no estándar | Datos que no son el patrón de relleno típico del ping | Filtro icmp, inspección de data |
| HTTP encubierto | Datos en headers, cookies, User-Agent o cuerpos codificados | Campos con Base64/hex, beaconing regular a un host fijo | --export-objects http, follow HTTP stream |
| Timing / covert | Sin payload evidente: la señal está en los intervalos entre paquetes | Cadencia demasiado regular o patrones binarios en los deltas | Columna de tiempo, -e frame.time_delta |
| Estego en payload | Un archivo transferido con datos escondidos dentro | Objeto extraíble más grande de lo esperado; texto tras el fin lógico | Exportar objeto, luego strings/binwalk |
Análisis de tráfico · cheat-sheet
Triage de una captura desconocida: primero el mapa (protocolos y conversaciones), luego el flujo sospechoso, luego los bytes. Consúltalo el día del evento.
tshark · lo esencial
tshark -r captura.pcap -q -z io,phs
tshark -r captura.pcap -q -z conv,tcp
tshark -r captura.pcap -Y dns -T fields -e dns.qry.name
tshark -r captura.pcap -z follow,tcp,ascii,0
tshark -r captura.pcap --export-objects http,./out
-z io,phs da la jerarquía de protocolos; conv,tcp las conversaciones; -T fields -e extrae un campo por paquete; follow reensambla un stream; --export-objects saca archivos transferidos.
tcpdump · captura y filtro
tcpdump -r captura.pcap -nn
tcpdump -r captura.pcap -A 'udp port 53'
tcpdump -r captura.pcap -X 'icmp'
-nn sin resolver nombres/puertos; -A muestra el payload ASCII; -X hex + ASCII. Útil para una mirada rápida antes de abrir Wireshark.
scapy · leer y reconstruir
from scapy.all import rdpcap
pkts = rdpcap("captura.pcap")
labels = [p[DNSQR].qname.decode() for p in pkts if p.haslayer(DNSQR)]
data = "".join(l.split(".")[0] for l in labels)
bytes.fromhex(data) # → reconstrucción
Cuando el dato está troceado en muchos paquetes, scapy te deja iterar y reensamblar por programa en vez de a mano. Ajusta la capa (DNSQR, Raw, ICMP) al canal.
Reto · exfiltración por DNS
Un endpoint sacó un secreto por consultas DNS: cada consulta lleva un trozo del dato en su primer label, bajo el dominio exfil.lab. Descarga la captura, reconstruye el dato y pega la flag.
Jornada final · priorizar por puntos
En jeopardy no ganas resolviendo todo: ganas eligiendo qué resolver y en qué orden. Esta es la disciplina que separa una buena jornada de una frustrante.
| Categoría | Valor típico | Costo en tiempo | Cuándo atacarla |
|---|---|---|---|
| Jailbreaks | bajo–medio | bajo · creatividad, no setup | Primera pasada: puntos rápidos para arrancar el marcador. |
| Exfiltración / PCAP | medio | medio · triage + reconstrucción | Temprano si ves el canal claro; tu ventaja con Wireshark pesa aquí. |
| Exploitation / RCE | alto | alto · recon + primitive + cadena | Bloque central, con timebox duro. No lo abras si aún hay medios sin tocar. |
| Malware / reversing | alto | muy alto · lectura estática | Al final, y solo si el ROI supera a lo que queda por barrer. |
Set de la jornada: dos retos locales verificables aquí + tres rutas externas legales cronometradas. Marca cada parada como mínimo imprescindible o si sobra tiempo.
-
10 minmínimo
PCAP de exfiltración (local)
El reto de arriba. Si aún no lo cerraste, es tu primer punto de la jornada: canal claro, reconstrucción directa.
-
8 minmínimo
Stream reensamblado (local)
Capturaste el payload de un stream TCP: llega en hex continuo. Reconstruye la flag y pégala abajo.
-
12 minsi sobra tiempo
RCE · PortSwigger
Un laboratorio de PortSwigger Web Security Academy ↗ de OS command injection o SSTI. Practica el flujo recon → primitive → impacto que viste en el Bloque 2.
-
12 minsi sobra tiempo
Reversing · picoGym
Entra por la guía oficial de picoCTF ↗, abre picoGym y filtra Reverse Engineering. Aplica el triage del Bloque 3 antes de mirar pistas.
-
repasomínimo
Jailbreak · agent hijacking
Repasa el laboratorio VECTOR del Bloque 1 ↗: inyección indirecta en RAG que escala a abuso de herramientas. Es la categoría común más barata en puntos.
Postmortem de la jornada
Al cerrar, escribe tu análisis: qué priorizaste, qué abandonaste a tiempo, qué evidencia te faltó. Es lo que te hace más rápido la próxima vez. Se guarda solo en este navegador.
Cierre del carril · ¿estás listo?
Autoevaluación honesta antes del evento. Se guarda sola en este navegador.