1. Resumen
"Profetas" es un laboratorio de nivel medio que combina múltiples vulnerabilidades clásicas en un entorno Linux:
- SQL Injection (Bypass de autenticación)
- XXE (XML External Entity Injection)
- Análisis de bytecode Python (.pyc)
- Escalada de privilegios mediante mala configuración de
sudo - Exfiltración de archivos usando
croc
El laboratorio obliga a encadenar vulnerabilidades web con técnicas de explotación local y reversing ligero para conseguir acceso como root.
2. Reconocimiento
Comenzamos con un escaneo completo de puertos:
sudo nmap -p- --open -sCV -Pn -n --min-rate 5000 172.17.0.2Resultado:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 9.6p1 Ubuntu 3ubuntu13.14 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 256 79:80:90:64:27:37:bc:e2:49:0c:27:c2:4a:09:f6:d0 (ECDSA)
|_ 256 6b:05:29:59:af:75:4f:78:7b:f5:2b:2a:13:07:6d:e0 (ED25519)
80/tcp open http Apache httpd 2.4.58 ((Ubuntu))
| http-cookie-flags:
| /:
| PHPSESSID:
|_ httponly flag not set
|_http-title: ProfetaNet Access
|_http-server-header: Apache/2.4.58 (Ubuntu)Análisis
- 22 (SSH) → Posible acceso remoto si obtenemos credenciales.
- 80 (HTTP) → Superficie principal de ataque.
- Cookie PHPSESSID sin flag
httponly.
La enumeración nos indica que el vector inicial probablemente será web.
3. Enumeración Web
Al acceder al puerto 80 encontramos una aplicación llamada:
ProfetaNet

Probamos credenciales por defecto:
admin:adminLogramos acceder a un panel de monitorización de servicios que muestra información sobre servidores y su estado.

En la parte inferior encontramos una cadena en Base64:

La decodificamos:
echo "cmVjdWVyZGEuLi4gdHUgY29udHJhc2XxYSBlcyB0dSB1c3Vhcmlv" | base64 -dResultado:
recuerda... tu contraseña es tu usuarioEste detalle será clave más adelante.
4. SQL Injection — Bypass de autenticación
Al cerrar sesión somos redirigidos a:
admin.php
Nuevo panel de autenticación (email y contraseña).
Procedemos a probar una inyección SQL básica:
- Email:
notadmin@localhost - Contraseña:
' OR 1=1-- -
¡El bypass funciona y accedemos al sistema!

5. XXE — XML External Entity Injection
Dentro del panel, encontramos un enlace que nos redirige a externalentitiinjection.php. Esta página nos permite procesar código XML y proporciona las siguientes pistas:
- El sistema utiliza
LIBXML_NOENT | LIBXML_DTDLOADpara procesar XML - Las entidades externas están habilitadas
- Algunos archivos pueden contener caracteres que rompen el XML
- Se sugiere probar diferentes wrappers:
file://,php://filter

Aprovechamos esta vulnerabilidad XXE para leer el archivo /etc/passwd: