Heist

Publicado: 19 de Junio de 2025 Autor: José Miguel Romero aKa x3m1Sec Dificultad: ⭐ Easy


📝 Descripción

Heist es una máquina Windows de dificultad Easy que simula un escenario de soporte técnico donde un usuario comparte inadvertidamente un archivo de configuración de un router Cisco que contiene credenciales cifradas. La explotación implica:

  • Reconocimiento inicial: Identificación de servicios web y SMB

  • Obtención de credenciales: Descifrado de contraseñas Cisco tipo 7 y cracking de hashes MD5

  • Enumeración lateral: Reutilización de credenciales para acceso SMB y WinRM

  • Escalada de privilegios: Extracción de credenciales de memoria del proceso Firefox mediante volcado de memoria

La máquina destaca la importancia de no compartir archivos de configuración y demuestra técnicas de análisis forense de memoria para la obtención de credenciales.


🎯 Resumen

Aspecto
Detalle

SO

Windows Server

Servicios principales

HTTP (80), SMB (445), WinRM (5985)

Vector de entrada

Credenciales expuestas en archivo de configuración

Escalada

Volcado de memoria del proceso Firefox

Flags obtenidas

user.txt, root.txt


🔭 Reconocimiento

🏓 Verificación de conectividad

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

🔍 Escaneo de puertos

🔧 Enumeración de servicios


🌐 Enumeración Web

🔗 Puerto 80 - Support Login Page

Al acceder al servicio HTTP encontramos un panel de login de un servicio destinado a soporte técnico.

🎫 Acceso como invitado

La aplicación permite iniciar sesión como invitado, lo que nos da acceso a un chat de asistencia donde un usuario llamado Hazard comparte un archivo de configuración sensible:


🔓 Análisis de credenciales

📄 Archivo de configuración Cisco IOS

El contenido del archivo adjunto revela ser una configuración de router Cisco IOS:

🔐 Descifrado de contraseñas Cisco Tipo 7

Las contraseñas Cisco Tipo 7 utilizan un cifrado muy débil que puede ser fácilmente revertido:

Método 1: Herramienta cisco-decrypt

Método 2: Herramienta online

  • URL: https://www.ifm.net.nz/cookbooks/passwordcracker.html

Credenciales obtenidas:

  • admin:Q4)sJu\Y8qz*A3?d

  • rout3r:stealth1agent

🥷 Cracking del hash MD5

Utilizamos hashcat para crackear el hash:

Credencial obtenida: rout3r:stealth1agent


🔍 Enumeración de usuarios y servicios

🧪 Verificación de credenciales

Probamos las credenciales obtenidas contra varios servicios, pero no funcionan directamente. Sin embargo, considerando el contexto del chat donde Hazard solicita una cuenta, probamos si reutilizó alguna contraseña:

¡Éxito! Las credenciales hazard:stealth1agent son válidas para SMB.

👥 Enumeración de usuarios mediante RID Brute Force

📋 Automatización de la extracción de usuarios

Para automatizar el proceso, extraemos y limpiamos la lista de usuarios:

🎯 Password Spraying

Creamos lista de contraseñas:

Verificación contra SMB:

Verificación contra WinRM:

Credenciales válidas encontradas:

  • SMB: Chase:Q4)sJu\Y8qz*A3?d

  • WinRM: Chase:Q4)sJu\Y8qz*A3?d


🚪 Acceso inicial

🔑 Conexión WinRM

Una vez dentro como Chase, obtenemos la primera flag en el directorio Desktop

🏁 Primera flag

📝 Análisis del archivo todo.txt

El archivo todo.txt revela información importante:

  1. Chase consulta regularmente el sitio web para ver la lista de problemas

  2. Configuración de la copia de seguridad del router

  3. El usuario invitado tiene acceso limitado comparado con admin@support.htb


🔬 Análisis de la memoria

El único proceso relacionado con un navegador que vemos en el sistema es firefox. SI queremos intentar capturar credenciales, podemos usar la herramienta procdump64.exe https://live.sysinternals.com/ y subirla con el comando upload de evil-winrm:

🛠️ Preparación de herramientas

Descarga de ProcDump:

Subida a la máquina objetivo:

💾 Volcado de memoria

Aceptación de licencia:

Generación del dump:

Descarga del archivo:


🕵️ Extracción de credenciales

🔍 Análisis del volcado de memoria

Ahora podemos usar el comando strings en combinación con grep para filtrar por posibles cadenas que contengan la palabra "password", "login" o "login_password":

Resultado:

Credenciales del administrador: Administrator:4dD!5}x/re8]FBuZ


👑 Escalada de privilegios

Usamos las credenciales obtenidas y evil-winrm par autenticarnos como Administrador y obtenemos la flag:

🔐 Acceso como Administrator

🏆 Flag de root


Last updated