Adalanche

En ocasiones tools encargadas de recolectar data sobre un dominio AD para Bloodhound pueden dar problemas por distintos motivos…, en este posts plantearé una alternativa realmente superior en muchos aspectos, tanto como para recolectar data y visualizarla, todo esto con Adalanche.
TLDR; Adalanche es una alternativa bastante atractiva a BloodHound.
- Domain: windcorp.local
- Domain Controller: dc01.windcorp.local
- User: spoNgi
- Password: password123!
- Domain Controller: dc01.windcorp.local
1 adalanche >
bloodhound ? 🤔
mmm dejaré algunos puntos que adalanche tiene y bloodhound no 👀
- Solo es un binario. (descargar y usar :D)
- Escanea y analiza los datos.
- Buscador de object por LDAP Querys.
- No necesita tener una configuracion inicial o un prerrequisito.
algunas cosas malas:
-
Depende de la memoria RAM:
- 250MB dumpeados de datos llevará a un consumo de 2.5GB de RAM al analizarlos.
-
Basado en navegador, susceptible a fallos al mostrar muchos objectos en el análisis de datos.
2 Instalación
Solo descargue el binario para su S.O.
# linux amd64 v2022.10.8
wget https://github.com/lkarlslund/Adalanche/releases/download/v2022.10.8/adalanche-linux-amd64-v2022.10.8.exe -O adalanche
chmod +x adalanche
./adalanche
3 How to use adalanche
3.1 Commands Basic
- linux que NO está unido a un domain
./adalanche collect activedirectory --domain windcorp.local \
--username spoNgi@windcorp.local --password 'password123!' \
--server dc01.windcorp.local
./adalanche analyze
# pass the hash
./adalanche collect activedirectory --domain windcorp.local \
--username spoNgi@windcorp.local --password '8119935C5F7FA5F57135620C8073AACA' \
--server dc01.windcorp.local --authmode ntlmpth
./adalanche analyze
--port 389 --tlsmode NoTLS --authmode basic
or --ignorecert --authmode basic
- linux/windows unido a un domain con credenciales en la session
./adalanche collect activedirectory
./adalanche analyze
3.2 Data Interpretation

-
LDAP Query: Aqui se colocan las queries LDAP. example:
- Buscar todas las Workstations del dominio:
(sAMAccountType=805306369)
- Sample Queries: muchas queries ☺️.
- Buscar todas las Workstations del dominio:
-
Analysis options:
-
Force too much data: si su query LDAP devuelve mas de 1000 objetos no se mostrará, para evitar bloquear el navegador, si no quiere eso, habilite esta opcion
OJO: debe tener una PC potente. -
Prune island Nodes: elimina los objetos no conectados a la consulta LDAP,
alternar su uso. -
Include backlinks: suele mostrar mas info,
alternar su uso. -
Analysis depth: limita los resultados de la busqueda.
- 1: se mostrará objetos que solo interactuan directamente con la query LDAP.
- 2: es como el
1
pero agregando otro nivel. - …
- 0: no muestra nada.
- si no coloca nada, le mostrará todo.
-
Max outgoing: parecido a depth, pero este limita la cantidad de conexiones salientes desde un objeto. útil para cuando un objeto tiene demasiadas asignaciones.
-
4 Examples :D
4.1 List of all kerberoastables users 🤫

(&(objectCategory=Person)(servicePrincipalName=*))
- los users sql_svc y jon.snow son Kerberoastables.

GetUserSPNs.py north.sevenkingdoms.local/user:p@ssw0rd321 -request
4.2 List of all asrep-roastables users

(&(objectClass=user)(userAccountControl:1.2.840.113556.1.4.803:=4194304))
- el user brandon.stark es Asreproastable.

GetNPUsers.py north.sevenkingdoms.local/brandon.stark -no-pass
4.3 Normal and reverse mode
2 opciones interesantes son los modo: Normal y Reverse en Analysis options, que se muestran de la siguiente manera en el gráfico:

- Normal mode Who can pwn this node?
- Reverse mode What can this node pwn?

Aqui le aplicamos un modo reverse al object/nodo brandon.stark