Explora Libros electrónicos
Categorías
Explora Audiolibros
Categorías
Explora Revistas
Categorías
Explora Documentos
Categorías
EN UN PENTEST
A UNA EMPRESA
(LLMNR POISONING)
by Diego Ilave*
Artículo #7
‘Responder’ es una herramienta ampliamente utilizada en escenarios de prueba de penetración y puede
ser utilizada para el movimiento lateral a través de la red por parte de los Red Team. La herramienta
contiene muchas características útiles como envenenamiento LLMNR, NT-NS y MDNS. Se utiliza en
escenarios prácticos para objetivos como la captura de hash o el reenvío de respuestas envenenadas
que admiten varios ataques AD. La herramienta contiene varios servidores integrados como HTTP, SMB,
LDAP, servidor de autenticación DCE-RPC, etc.
-LLMNR: LLMNR es un protocolo que permite la resolución de nombres sin necesidad de un servidor
DNS. Para ello, envía un paquete de red al puerto UDP 5355 a la dirección de red de multidifusión
-MDNS: Multicast DNS (mDNS) es un protocolo destinado a ayudar con la resolución de nombres en las
redes. No consulta un servidor de nombres, sino que multi difunde las consultas a todos los clientes en
una red directamente.
-LLMNR/NBT-NS Poisoning: Digamos que una víctima quiere conectarse a una unidad compartida
\\wow para que envíe la solicitud al servidor DNS. El único problema es que el DNS no puede conectarse
a \\wow porque no existe. Por lo tanto, el servidor responde diciendo que no puede conectar a la víctima
con \\wow. A partir de entonces, la víctima multi difundirá esta solicitud a toda la red (usando LLMNR) en
caso de que algún usuario en particular conozca la ruta a la unidad compartida (\\wow).
DHCP Poisoning: El protocolo de cliente de host dinámico (DHCP) se usa para proporcionar a un host su
dirección IP, máscara de subred, puerta de enlace, etc. Windows usa múltiples opciones de DHCP
personalizadas como NetBIOS, WPAD, etc. Al envenenar la respuesta DHCP, un atacante podría ayudar a
la víctima a identificar su propio servidor falso para cualquier tipo de autenticación. A su vez,
comprometer las credenciales.
Cuando un sistema intenta acceder a un recurso compartido SMB, envía una solicitud al servidor DNS
que luego resuelve el nombre del recurso compartido en la dirección IP respectiva y el sistema
solicitante puede acceder a él. Sin embargo, cuando el nombre compartido proporcionado no existe, el
sistema envía una consulta LLMNR a toda la red. De esta manera, si algún usuario tiene acceso a ese
recurso compartido, puede responder y proporcionar la comunicación al solicitante.
Vamos a compartir "wow" que no existe. Si el recurso compartido existe en la misma red, se puede
acceder a wow escribiendo "\\wow" en la barra de direcciones del explorador de archivos. No existe, por
lo tanto, Windows arroja un error.
1
Ahora, en este punto, la máquina solicitante (Windows 10) envía una solicitud LLMNR. Configuramos el
‘Responder’ para envenenar esa solicitud. Necesitamos decirle al ‘Responder’ la interfaz de red en la
que queremos escuchar las solicitudes LLMNR. Usaremos eth0. La ejecución del ‘Responder’
predeterminado iniciará el envenenamiento LLMNR y NBT-NS de forma predeterminada.
Ahora cuando las victimas intenten acceder a la unidad compartida “\\wow” se verá lo siguiente,
“\\wow” se ha puesto a disposición para obtener las credenciales.
Ese es solo el request envenenado para poder obtener hashes NTLM. Incluso si el usuario no ingresa las
credenciales se obtendrán los hashes.
2
Ataque 2: LLMNR/NBT-NS Poisoning a través WPAD
WPAD: el protocolo de detección automática de proxy web es un método utilizado por un navegador
para ubicar e interactuar automáticamente con los servicios de caché en una red para que la
información se entregue rápidamente. WPAD usa DHCP de manera predeterminada para ubicar un
servicio de caché para facilitar la conectividad directa y la resolución de nombres.
Cuando una URL no válida es una entrada en el navegador, el navegador no puede cargar esa página
usando DNS y, por lo tanto, envía una solicitud LLMNR para encontrar un servidor proxy WPAD. Este
comportamiento está presente de forma predeterminada en los navegadores que han habilitado la
"detección de configuración automática", una opción que se usa a menudo en las redes corporativas
para enrutar el tráfico a través del proxy. Luego solicita wpad.dat que contiene los datos de
configuración automática del proxy.
El ‘Responder’ creará un servidor proxy WPAD falso, envenenará la solicitud y le dirá al navegador que
tiene un archivo wpad.dat y solicita autenticación. Cuando el usuario ingresa sus credenciales, estos
quedarán guardados.
Como podemos ver arriba, el DHCP poisoning y el proxy WPAD se han activado. Ahora, cuando un
usuario ingresa una URL incorrecta, digamos, randomurl.local, el navegador no puede localizarla. El
‘responder’ envenena e inyecta una respuesta DHCP con la IP de WPAD y el navegador intenta
autenticarse en el servidor WPAD y muestra un aviso de inicio de sesión.
3
Cuando el cliente registra sus credenciales, recibiremos sus hashes NTLM. Ahora podemos guardar
estos hashes en un archivo hash.txt y usar hashcat para descifrarlo. Tenga en cuenta que el número de
módulo 5600 es el adecuado para descifrar NTLMv2.
Recomendaciones:
Conclusión:
El artículo cubrió algunos ataques útiles que se pueden realizar con la ayuda del ‘Responder’. La
herramienta está codificada en Python y, por lo tanto, es independiente de la plataforma. Los del Red
Team utilizan mucho esta herramienta para realizar movimientos laterales. El objetivo del artículo es
servir como referencia cuando se trata de usar el ‘Responder’ en escenarios de pentest.