WriteUp CTF Forest (Active Directory) de Hack The Box

Enumeración

Comenzamos enumerando los servicios que tiene abiertos nuestro objetivo.

Los puertos que más destacan son:

  • Puerto 53 probablemente utilizado para servicios DNS.
  • Puerto 88 con servicio Kerberos.
  • Puerto 139 y 445 con servicios samba.
  • Puerto 5985 con servicio winrm.

Esto parece un controlador de dominio. También notaré TCP/5985, lo que significa que, si puedo encontrar las credenciales de un usuario, podría obtener un shell sobre WinRM.

Añadimos el dominio encontrado al archivo /etc/hosts.

Enumeración de SMB

Tanto smbclient como smbmap no nos retorna ningún recurso compartido accesible.

Pero vemos que podemos acceder mediante sesiones nulas por lo que mi siguiente paso es probar suerte e intentar enumerar con la herramienta rpcclient.

Esto me devolvió una gran cantidad de usuarios, ahora solo filtraré por los usuarios que me interesan.

Ataque ASREPRoast

El ataque ASREPRoast se basa en encontrar usuarios que no requieren pre-autenticación de Kerberos. Lo cual significa que cualquiera puede enviar una petición AS_REQ en nombre de uno de esos usuarios y recibir un mensaje AS_REP correcto. Esta respuesta contiene un fragmento del mensaje cifrado con la clave del usuario, que se obtiene de su contraseña. Por lo tanto, este mensaje se puede tratar de crackear offline para obtener las credenciales de dicho usuario.

Tenemos un hash de contraseña para el usuario svc-alfresco, s3rvice. Utilizaremos la herramienta Evil-WinRM para obtener acceso al objetivo. Esto solo es posible porque el servicio WinRM está abiertos (consultar en el escaneo de nmap).

Ya tenemos acceso, ahora debemos buscar la flag user.txt.

Elevación de privilegios

En Active Directory, puede usar BloodHound para encontrar relaciones (entre usuarios, grupos y computadoras) que pueden usarse para escalar sus privilegios. Es muy útil para el equipo rojo, pero también para el equipo azul para identificar y mitigar las vulnerabilidades y limitar las rutas a objetivos de alto valor dentro de su arquitectura AD. Utilicemos sharphound.exe para visualizar el dominio y buscar rutas de escalada de privilegios.

Debería haber un archivo zip en la carpeta, que puede ser cargado en Bloodhound.

Una vez cargado el archivo, buscamos el usuario svc-alfresco y lo marcamos como propio. Haciendo doble clic en el nodo debería mostrar sus propiedades a la derecha.

Uno de los grupos encontrados es el de Account Operators, que es un grupo privilegiado de AD.

Los miembros del grupo Account Operators pueden crear y modificar usuarios y añadirlos a grupos no protegidos. Miremos esto y miremos las rutas de acceso a Domain Admins. Buscamos la Ruta más corta a objetivos de alto valor.

Una de las rutas muestra que el grupo de permisos de Windows de Exchange tiene privilegios de WriteDacl en el dominio. El privilegio WriteDACL da a un usuario la capacidad de añadir ACLs a un objeto. Esto significa que podemos añadir un usuario a este grupo y darle privilegios DCSync.

Volvemos a la shell de WinRM y añadimos un nuevo usuario a los Permisos de Exchange de Windows, así como el grupo de Exchange Windows Permissions así como al grupo Remote Management Users.

Los comandos anteriores crean un nuevo usuario llamado elhackeretico y lo añadimos a los grupos necesarios.

BloodHound nos detalla como abusar de ese privilegio.

A continuación, vamos a descargar el script del PowerView y a cargarlo en la máquina víctima.

Ahora con impacket-secretsdump hacemos un volcado de todos los hashes del dominio.

Y ahora accedemos al sistema con el usuario administrador y su hash.

No responses yet

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *