Saltearse al contenido

LLMNR / NBT-NS / mDNS Poisoning

Cuando un equipo Windows no resuelve un nombre por DNS, cae en protocolos de resolución de broadcast/multicast heredados: LLMNR, NBT-NS y mDNS. El cliente pregunta a toda la red local “¿quién es FILESERVR?” y confía en la primera respuesta. No hay autenticación. Un atacante en el mismo segmento responde “yo soy”, la víctima le envía su intento de autenticación NTLM, y el atacante captura el hash Net-NTLM. Es el vector de acceso inicial más fiable en una LAN de dominio.

sequenceDiagram
    participant V as Víctima
    participant A as Atacante (Responder)
    participant T as Objetivo
    V->>A: consulta de nombre fallida (LLMNR/NBT-NS), el atacante responde suplantando
    V->>A: autentica (Net-NTLMv2)
    A->>A: captura y crackea offline (hashcat -m 5600)
    A->>T: o relay de la auth (ntlmrelayx)

El fallo es de diseño: estos protocolos no verifican la identidad del que responde. Cualquier host en el segmento L2 puede suplantar cualquier nombre. Como los errores de tipeo, los recursos obsoletos y los web proxy auto-discovery (WPAD) generan consultas fallidas constantemente, el atacante solo tiene que escuchar y responder para cosechar credenciales sin tocar ningún servidor.

# escucha y responde a LLMNR/NBT-NS/mDNS, levanta servidores trampa
responder -I eth0 -wv
# llegan los hashes Net-NTLMv2 de quien resolvió un nombre inexistente

Responder levanta además servidores SMB/HTTP/WPAD falsos: cuando la víctima intenta autenticar, su cliente manda un Net-NTLMv2 que queda registrado. También WPAD: si el navegador busca proxy por WPAD, se le sirve uno malicioso que fuerza auth.

El hash capturado no es el NT hash (no sirve para Pass-the-Hash), pero sí para:

  • Crackearlo offline (hashcat modo 5600) → contraseña en claro si es débil.
hashcat -m 5600 hashes.txt rockyou.txt
  • Relaying (ver NTLM Relay): reenviarlo en vivo a otro servicio sin crackear.
  • Crack → credenciales de dominio → de aquí a enumeración completa (Enumeración de Active Directory) y spraying.
  • Relay → ejecución/volcado en un objetivo donde esa cuenta sea admin local (NTLM Relay).

En vez de esperar errores de resolución, se puede forzar a una víctima a autenticarse contra ti:

  • Ficheros/enlaces con rutas UNC (\\attacker\share) en documentos, descripciones, firmas de correo.
  • PetitPotam, PrinterBug (SpoolSample), Coerce → fuerzan a un servidor (incluido un DC) a autenticarse contra el atacante (se encadena con relay a AD CS, ver AD CS (Active Directory Certificate Services)).
  • Responder — envenenamiento LLMNR/NBT-NS/mDNS + servidores trampa + WPAD.
  • Inveigh — equivalente en PowerShell/C# para Windows.
  • hashcat/john — crackeo de Net-NTLMv2 (modo 5600).
  • mitm6 — envenenamiento vía DHCPv6/DNS IPv6 (IPv6 suele estar activo y sin vigilar): clásico mitm6 + ntlmrelayx.

Credenciales de dominio (tras crack) o ejecución directa (tras relay) partiendo de cero, solo por estar en la LAN. Es el pistoletazo de salida de la mayoría de compromisos de AD internos.

  • Respuestas LLMNR/NBT-NS desde un host que no es el legítimo; aparición de un WPAD inesperado.
  • Honeypot: consultas a nombres señuelo que no existen → si alguien responde, hay un Responder en la red.
  • Tráfico DHCPv6/router advertisements anómalo (mitm6).
  • Autenticaciones NTLM hacia hosts no habituales; coerción (llamadas EFSRPC/MS-RPRN hacia máquinas raras).

Monitoriza NBT-NS/LLMNR en el IDS, eventos de logon NTLM (4624 tipo 3) hacia destinos inusuales, y actividad DHCPv6. Despliega honeytokens de resolución.

  • Deshabilita LLMNR (GPO: “Turn off multicast name resolution”) y NBT-NS (por adaptador o DHCP option 001), y mDNS donde no se use. Es la mitigación de raíz.
  • Deshabilita WPAD si no se usa; crea una entrada DNS wpad para neutralizar el descubrimiento.
  • Deshabilita IPv6 si no se utiliza, o protégelo (RA Guard, DHCPv6 Guard) contra mitm6.
  • Fuerza SMB signing y, en lo posible, LDAP signing/channel binding (corta el relay — ver NTLM Relay).
  • Segmentación L2, 802.1X, y contraseñas fuertes (frena el crack offline).

Identifica el host atacante en el segmento, aísla, rota las credenciales que pudieron capturarse/crackearse y despliega las GPO de deshabilitación si aún no estaban.

  • LLMNR/NBT-NS poisoning no es un CVE: es una debilidad de protocolo (MITRE T1557.001), presente por defecto en casi toda red Windows.
  • Responder + crack/relay es la apertura documentada de incontables pentests internos y de intrusiones reales.
  • mitm6 (IPv6/WPAD) y la coerción (PetitPotam CVE-2021-36942, PrinterBug) extienden el vector hacia relay a AD CS → compromiso total del dominio.
  • ¿LLMNR/NBT-NS/mDNS activos? (Responder captura hashes al escuchar)
  • ¿Net-NTLMv2 capturados crackeables offline?
  • ¿WPAD explotable (sin entrada DNS wpad)?
  • ¿IPv6 activo y sin protección (mitm6)?
  • ¿SMB signing no forzado (relay viable)?
  • ¿Coerción posible (PetitPotam/PrinterBug) hacia relay?
  • Blue: ¿honeytokens de resolución desplegados?
  • ¿GPO de deshabilitación de LLMNR/NBT-NS aplicada?