HTB
Easy
Fluffy
En la Machine Information nos dicen lo siguiente:
As is common in real life Windows pentests, you will start the Fluffy box with credentials for the following account: j.fleischman / J0elTHEM4n1990!
Por lo que tenemos credenciales validas para conectarnos a la maquina
Primero hacemos un escaneo de puertos basico para ver que puestos tiene expuestos
![[Pasted image 20261015111021.png]] ![[Pasted image 20261015111014.png]]
Por lo que se puede apreciar se trata de un DC con puertos DNS, Kerberos, LDAP. Ademas tiene puertos de SMB/NetBIOS y WinRM
Tambien podemos ver que el dominio es fluffy.htb por lo que vamos a incluirlo en nuestro /etc/hosts
![[Pasted image 20261015111553.png]]
Probamos con netexec si las credenciales son correctas usando el protocolo smb y winrm. Aqui vemos que tenemos acceso al smb pero no via winrm
![[Pasted image 20261015112022.png]]
Vamos a usar enum4linux con nuestras credenciales para sacar la mayor informacion posible del SMB
![[Pasted image 20261015112230.png]]![[Pasted image 20261015112253.png]]![[Pasted image 20261015112305.png]]
Conseguimos algo de informacion pero no podemos ver los shares. Vamos a probar con smbmap
![[Pasted image 20261015112418.png]]
Aqui vemos varios Shares default y tambien tenemos IT desde el que podemos leer y escribir. Nos conectamos a el y recuperamos todos los archivos para verlos offline
![[Pasted image 20261015112858.png]]![[Pasted image 20261015113002.png]]![[Pasted image 20261015113007.png]]![[Pasted image 20261015113059.png]]
Aqui podemos ver que han tenido algunas vulns recientemente que tienen que upgradear
Miramos los otros directorios a ver que nos encontramos
![[Pasted image 20261015113221.png]]
No encontramos nada interesante por aqui asi que nos centraremos en ese PDF. Si miramos los metadatos encontraremos lo que parece ser un usuario valido:
![[Pasted image 20261015114518.png]]
Podemos confirmarlo usando RPC sobre SMB
![[Pasted image 20261015114642.png]]
Si buscamos el CVE (CVE-2025-24071 exploit) en internet encontraremos el siguiente repo (https://github.com/FOLKS-iwd/CVE-2025-24071-msfvenom) que parece indicar que tiene un modulo en MSF asi que vamos a verlo
![[Pasted image 20261015114830.png]]
Por lo que se puede ver, mediante una libreria maliciosa en un ZIP que deberia estar en los recursos SMB. Si un usuario extrae este ZIP con la libreria SMB inicia una peticion de autenticacion leakando el hash NTLM sin interaccion
Cargamos el modulo en msf:
![[Pasted image 20261015115430.png]]
Me daba una incompatibilidad con mi version ruby y he tenido que cambiarel siguiente bloque:
![[Pasted image 20261015120241.png]]
![[Pasted image 20261015120846.png]]
Ahora nos creamos un listener en msfconsole en el puerto 445
![[Pasted image 20261015121113.png]]
Subimos el archivo
![[Pasted image 20261015121343.png]]
A los segundos obtenemos algunos hashes NTLM todos de p.agila
![[Pasted image 20261015121645.png]]
Lo crackeamos offline con hashcat y obtenemos sus credenciales
![[Pasted image 20261015121832.png]]
p.agila:prometheusx-303
Volvemos a probar a ver si tenemos acceso al winrm pero tampoco, ademas tenemos los mismos privs sobre el SMB
![[Pasted image 20261015122054.png]]
Ahora vamos a tratar de enumerar el dominio mediante bloodhound.py a ver si encontramos alguna otra ruta
Antes metemos a dc01 en el /etc/hosts
![[Pasted image 20261015123150.png]] ![[Pasted image 20261015123137.png]]
Al buscar a p.agila vemos que tenemos transitive object control al pertenecer a Service Account Managers
![[Pasted image 20261015123555.png]]
Primer paso, nos añadimos al grupo de SERVICE ACCOUNTS ya que tenemos Generic All
![[Pasted image 20261015124249.png]]
Confirmamos que se ha realizado correctamente con ldapsearch
![[Pasted image 20261015124513.png]]
Las 3 cuentas que tenemos como Generic Write son:
![[Pasted image 20261015124602.png]]![[Pasted image 20261015124608.png]]![[Pasted image 20261015124615.png]]
Vamos a investigar en bloodhount cual es mas interesante
Tras revisar un poco, la que mas me interas es WINRM_SVC porque seguramente nos deje conectarnos al servidor DC01, la siguiente con mas interes seria CA_SVC por si tiene control sobre alguna autoridad certificadora
Vamos a realizar un Kerberoasting aprovechando los privs GenericWrite
![[Pasted image 20261015130722.png]]
Me da un error en Kerberos por no tener sincronizada la hora con el DC
![[Pasted image 20261015130819.png]] ![[Pasted image 20261015130754.png]]
Volvemos a la hora normal y crackeamos offline
![[Pasted image 20261015131023.png]]
No hemos sido capaces de crackearlo
Ahora podemos intentar un ataque de Shadow Credentials contra WINRM_SVC para intentar autenticarnos como este usuario sin conocer su pass
Como funciona: en AD hay un atributo msDS-eyCredentialLink que puede almacenar informacion de claves publicas asociadas a una cuenta (se usan para algunas formas de autenticacion mediante certificados). Si consiguiesemos modificarlo podriamos registrar una clave publcia registrada por nosotros y despues autenticarnos usando nuestra clave privada (se puede realizar gracias al GeneralWrite pero tiene que ser bajo algunas condiciones mas)
![[Pasted image 20261015140952.png]]
Voy a realizar el Shadow Creds con las otras cuentas tambien
![[Pasted image 20261015141413.png]]![[Pasted image 20261015141448.png]]
Obtenido el hash de winrm_svc, ahora podemos intentar autenticarnos con evilwin-rm en el host usando el usuario y el hash obtenido
![[Pasted image 20261015141125.png]]
Hemos conseguido la primera flag y ahora nos tocaria elevar privs hacia Administrator para conseguir la segunda. Miramos nuestros privs a ver si tenemos acceso rapido por aqui o miramos otras rutas
![[Pasted image 20261015143132.png]] ![[Pasted image 20261015143142.png]]
Nada interesante.
Como vimos que CA_SVC era miembro de CERT PLUBLISHERS en Bloodhound podemos ver informacion sobre la autoridad certificadora a ver si encontramos alguna vulnerabilidad usando certipy enumerando el AD CS ya que no la hemos enumerado al ver que teniamos GenericWrite directamente y era una ruta facil de obtener hashes
![[Pasted image 20261015143601.png]]
No encontramos ninguna vuln con CVE asociado directamente pero si encotnramos en una de las plantillas el siguiente identificador 1.3.6.1.4.1.311.25.2 y vemos que esta deshabilitado
Buscando que significaba, esta es una extension de seguridad que permite vincular de forma segura el certificado solicitado al CA con la cuenta que la solicita incorporando informacion del SID. Como esta deshabilitado podemos conseguir un certificado de otra cuenta (priv) sin que contenga informacion del SID que lo vincule estrechamente a la cuenta que suplantamos
![[Pasted image 20261015143806.png]]
Para realizar este ataque primero nos tenemos que cambiar el UPN (User Principal Name) al de la cuenta que queramos suplantar, en nuestro caso Administrator aprovechando el GenericWrite
![[Pasted image 20261015145141.png]]
Tras esto solicitamos un certificado usando el hash NT conseguido en el Shadow Credentials para autenticarnos en la CA y la plantilla User. La CA mirara nuestro UPN y nos dara el certificado de ese UPN sin extension de seguridad SID
![[Pasted image 20261015145246.png]]
Restauramos nuestro UPN de CA_SVC para deshacer los cambios
![[Pasted image 20261015145329.png]]
Nos autenticamos como Administrator via winrm usando el certificado emitido en .pfx mediante Kerberos PKINIT (no necesitamos conecer la pass de administrator)
![[Pasted image 20261015142932.png]]![[Pasted image 20261015142941.png]]













