Sauna

Publicado: 20 de Junio de 2025 Autor: José Miguel Romero aKa x3m1Sec Dificultad: ⭐ Easy OS: Windows

📝 Descripción

Sauna es una máquina Windows de dificultad fácil que simula un entorno de Active Directory corporativo. La máquina presenta un sitio web de un banco ficticio que revela información sobre empleados, lo que permite la enumeración de usuarios válidos del dominio. La explotación inicial se logra mediante AS-REP Roasting contra un usuario sin pre-autenticación Kerberos habilitada. La escalada de privilegios se realiza a través del descubrimiento de credenciales hardcodeadas en el registro de Windows y culmina con un ataque DCSync para obtener acceso administrativo completo.


🎯 Puntos Clave

  • Reconocimiento web: Extracción de nombres de empleados del sitio web corporativo

  • Generación de usernames: Uso de username-anarchy para crear listas de usuarios potenciales

  • Enumeración de usuarios: Kerbrute para validar usuarios en el dominio

  • AS-REP Roasting: Explotación de usuarios sin pre-autenticación Kerberos

  • Credenciales en registro: Descubrimiento de credenciales de AutoLogon

  • Análisis con BloodHound: Identificación de privilegios DCSync

  • DCSync Attack: Volcado completo de hashes del dominio


🔭 Reconocimiento

🏓 Ping para verificación en base a TTL

💡 Nota: El TTL cercano a 128 sugiere que probablemente sea una máquina Windows.

🚀 Escaneo de puertos

🔍 Enumeración de servicios

⚠️ Añadimos el siguiente vhost a nuestro fichero /etc/hosts:

📋 Análisis de Servicios Detectados

  • Puerto 53 (DNS): Servidor DNS del dominio

  • Puerto 80 (HTTP): Sitio web corporativo del banco

  • Puerto 88 (Kerberos): Servicio de autenticación del dominio

  • Puerto 389/636 (LDAP/LDAPS): Servicios de directorio

  • Puerto 445 (SMB): Compartición de archivos

  • Puerto 5985 (WinRM): Administración remota de Windows

  • Puertos RPC varios: Servicios de llamadas remotas


🌐 Enumeración de Servicios

🗂️ Puerto 445 - SMB

Dado que no tenemos credenciales, intentamos enumeración con sesión nula pero no obtenemos información útil:

🌐 Puerto 80 - HTTP (Egotistical Bank)

Al acceder al sitio web encontramos una página corporativa del banco ficticio "Egotistical Bank":

🔍 Fuzzing de directorios

👥 Extracción de nombres de empleados

En la página /about.html encontramos información valiosa sobre los empleados del banco:

  • Fergus Smith - Senior Manager

  • Shaun Coins - Marketing Manager

  • Sophie Driver - Account Manager

  • Bowie Taylor - HR Manager

  • Hugo Bear - CEO

  • Steven Kerb - Software Engineer

Creamos una lista con estos nombres para generar posibles usernames:


🎯 Explotación Inicial

👤 Generación de Usernames

Utilizamos username-anarchy para generar diferentes combinaciones de nombres de usuario:

Esto genera combinaciones como:

  • fergus, fsmith, fergus.smith, ferguss

  • shaun, scoins, shaun.coins, shauns

  • sophie, sdriver, sophie.driver, sophied

  • etc.

🔐 Enumeración de usuarios con Kerbrute

Usamos la herramienta kerbrute para tratar de enumerar usuarios válidos en el dominio

¡Excelente! Encontramos un usuario válido: fsmith (Fergus Smith)

🎫 AS-REP Roasting

Verificamos si el usuario fsmith tiene la pre-autenticación de Kerberos deshabilitada:

¡Perfecto! El usuario tiene AS-REP Roasting habilitado. Guardamos el hash para crackearlo.

🔨 Cracking del hash

¡Credenciales obtenidas!

  • Usuario: fsmith

  • Contraseña: Thestrokes23

✅ Verificación de acceso


🚪 Acceso Inicial

💻 Conexión vía WinRM

🏃‍♂️ Captura de User Flag


🔝 Escalada de Privilegios

🔍 Enumeración del sistema

🗝️ Descubrimiento de credenciales en el registro

Realizamos enumeración básica del sistema en busca de vectores de escalada y encontramos credenciales almacenadas en el registro de Windows:

¡Nueva credencial encontrada!

  • Usuario: svc_loanmgr (svc_loanmanager)

  • Contraseña: Moneymakestheworldgoround!

🔄 Movimiento lateral

Verificamos si esta nueva cuenta tiene acceso WinRM:

Nos conectamos con la nueva cuenta:

🩸 Análisis con BloodHound

Para analizar mejor los privilegios y relaciones en el dominio, utilizamos SharpHound:

📊 Análisis de privilegios

Una vez cargamos los datos en BloodHound y marcamos svc_loanmgr como "Owned", descubrimos que este usuario tiene privilegios especiales:

  • GetChanges: Permite leer cambios en el directorio

  • GetChangesAll: Permite leer todos los cambios, incluyendo secretos

Estos privilegios nos permiten realizar un ataque DCSync para volcar todos los hashes del dominio.

💀 Ataque DCSync

¡Hash del Administrador obtenido!

  • Hash NTLM: <REDACTED>


👑 Acceso como Administrador

🔐 Pass The Hash

Utilizamos el hash NTLM del administrador para obtener acceso completo:

🏁 Captura de Root Flag

Last updated