🟢Planning
En esta ocasión vamos a hacer el writeup de la máquina planning de Hack the Box, una máquina Linux de dificultad easy.

Pista inicial
La plataforma nos proporciona las credenciales iniciales para esta máquina:
Información General
Nombre de la máquina:
PlanningIP:
10.10.11.68Sistema operativo:
LinuxDificultad:
🟢 FácilFecha:
27/05/2025
Primer acceso
Añadimos la IP 10.10.11.68 a nuestro /etc/hosts y accedemos través del navegador.

Parece una web de cursos online. Tiene algunos formularios como el input del index y la página de Contact que podrían tener alguna vulnerabilidad.
Escaneo de puertos
Solo encontramos puertos comunes (22 y 80) abiertos. Nos centraremos en el servicio web.
Testing de formularios
Probamos distintas técnicas de inyección contra los formularios e inputs de la web pero ninguno nos devuelve nada interesante.
Fuzzing
Haciendo fuzzing con dirsearch nos encontramos unos pocos directorios:
Revisando los directorios no encontramos nada relevante.
Enumeración de Vhosts
Extraer el Content-Length
Fuzzing de vhosts con ffuf
Encontramos un subdominio grafana muy interesante! Vamos a añadirlo a /etc/hosts y echarle un ojo.

Llegamos a un panel de login de grafana y encontramos una versión: 11.0.0. Probando las credenciales proporcionadas para la máquina logramos acceder sin problema.

Búsqueda de exploits
En el siguiente post encontramos un CVE asociado con la versión 11.0 de grafana:
En Sploitus encontramos algunos exploits interesantes:
Encontramos este exploit interesante:
Explotación de Grafana
Iniciamos un listener de netcat y ejecutamos el exploit:

puedes ver que estamos en un entorno Docker y después de buscar cualquier dato importante leemos la variable env:
Encontramos lo que parece la contraseña de un administrador de seguridad de Grafana:
Probamos a acceder en el login de Grafana pero no nos deja, por lo que probaremos estas credenciales por SSH.
User flag
Escalada de privilegios
Permisos de ejecución
No tenemos permisos de ejecución en la máquina:
Puertos abiertos
Usamos netstat para verificar los puertos abiertos en el servidor:
Encontré que el puerto 3306 y 8000 estaban abierto, con MySQL y HTTP ejecutándose. Verifiqué el archivo de configuración web y encontré el nombre de usuario y la contraseña de MySQL, lo que me permitió iniciar sesión con éxito en MySQL.
Acceso a la base de datos
Enumeramos el contenido de las tablas pero no encontramos ninguna credencial válida, más que payloads sospechosos intentando explotar Path Traversal:
Acceso web
Vamos a echarle un ojo al puerto 8000 expuesto:
Habilitar Port Forwaring SSH
Acceso web en Kali

Llegamos a un panel de login web pero se un nombre de usuario y una contraseña para iniciar sesión. Intentamos usar las credenciales que tenemos hasta el momento, pero el inicio de sesión falló.
Credential Hunting
Recopilé información y encontré un /opt/crontabs. Dentro había un archivo crontab.db.
Este archivo contiene una credencial sensible en texto claro usada para proteger un archivo comprimido:
Acceso a Crontabs
Usé el nombre de usuario root para iniciar sesión en el sitio web al que acababa de acceder y funciona:

Agregamos una entrada crontab para añadir una reverse shell:

Guardamos, abrimos un listener de netcat y pulsamos en el botón "Save to crontab" para guardarlo y que se ejecute automáticamente:

Recibimos una shell como root:
Última actualización
¿Te fue útil?