MonitorsFour corre un sitio web donde se descubrio una API. Esta, exponia las credenciales de usuarios, lo que permitio el acceso al sitio. Tambien, se encontro Cacti con una vulnerabilidad RCE. Se ejecuto Password Spraying para obtener credenciales validas que permitieron la explotacion y acceso a un contenedor docker. El sitio principal mencionaba la version de docker, la cual se encontro vulnerable, tras la explotacion, se logro acceso privilegiado al almacenamiento host. Finalmente se modifico una tarea programada para obtener acceso privilegiado en el host.
| Nombre | MonitorsFour |
|---|---|
| OS | Windows |
| Puntos | 20 |
| Dificultad | Easy |
| Fecha de Salida | 2025-12-06 |
| IP | 10.129.100.42 |
| Maker | |
|
Recon
nmap
nmap muestra multiples puertos abiertos: http (80) y WinRM (5985).
|
|
Web Site
El sitio web nos redirige al dominio monitorsfour.htb el cual agregamos al archivo /etc/hosts.
|
|
Se describe servicios de Networking.

Existe un formulario para login.

Directory Brute Forcing
feroxbuster muestra contenido estatico, vistas y contenido relacionado a un administrador.
|
|
Views
Las vistas (views/*) no parecen estar protegidas y, muestra el contenido de distintas paginas, exponiendo funcionalidades de administrador.


El codigo html de api.php muestra un enlace a un endpoint de una API.
|
|
Subdomain Discovery
Tras ejecutar ffuf este muestra el subdominio cacti.
|
|
API - Website
ffuf muestra multiples endpoints.
|
|
/users requiere de un token valido.
|
|
Al indicar el valor 0 este devuelve todos los usuarios con su informacion.
|
|
Creamos un wordlist con los usuarios.
|
|
Crack The Hash
Obtuvimos unicamente los hashes.
|
|
crackstation muestra el valor del hash del administrador.
| Hash | Type | Result |
|---|---|---|
| 56b32eb43e6f15395f6c46c1c9e1cd36 | md5 | wonderful1 |
| 69196959c16b26ef00b77d82cf6eb169 | Unknown | Not found |
| 2a22dcf99190c322d974c8df5ba3256b | Unknown | Not found |
| 8d4a7e7fd08555133e056d9aacb1e519 | Unknown | Not found |
Admin
Las credenciales dan acceso al dashboard.

Vemos que es posible generar una token para la API.

Existe un historial donde se indican todos los cambios realizados en cada version. Se menciona una vulnerabilidad parcheada y, la version Docker Desktop 4.44.2.
| Version | Date | Title | Change | Description |
|---|---|---|---|---|
| V.1.9 | June 2, 2025 | API User Integration | API | Integrated API user management with token-based authentication, enabling external systems to automate tasks such as retrieving user data, managing resources, and interacting with the platform securely. |
| V.1.8 | June 1, 2025 | API Key Management | API | Implemented secure API key generation and updated the user interface to allow managing API keys. Users can now create keys for programmatic access while maintaining control through the admin dashboard. |
| V.1.7 | May 16, 2025 | Infrastructure Notice | Infrastructure | Migrated MonitorsFour infrastructure to Windows and Docker Desktop 4.44.2, enabling containerized deployments for improved portability, scalability, and easier environment management. |
| V.1.6 | May 1, 2025 | Security Notice: SQL Injection Patch | Security | Patched an error-based SQL injection vulnerability in the forgotten password form by enforcing secure prepared state stricter input validation. |
| V.1.5 | March 1, 2025 | User Enhancements | Users | Added functionality to allow Super Users to create, update, and delete user accounts directly from the user management interface. |
| V.1.4 | February 1, 2024 | User Management | Users | Created the users section to display all current users of the web app. Features include role management, user status monitoring, and detailed user activity logs. |
| V.1.3 | January 1, 2024 | Customer Management | Customers | Developed the customers section to handle all customer-related information. Features include the ability to add new customers, edit existing profiles, and remove customers from the database. |
| V.1.2 | December 1, 2023 | Invoice Tracking | Invoices | Introduced the ability to create and manage invoices. Included features for tracking payment status, due dates, and automatic reminders. |
| V.1.1 | November 1, 2023 | Order Management | Tasks | Added functionality to create, update, and monitor tasks related to customer orders. Enhanced the workflow with real-time updates and notifications. |
| V.1.0 | October 1, 2023 | Initial release | Dashboard | Initial setup of the dashboard for real-time monitoring and data visualization. Included basic traffic sources, sales statistics, and quick stats. |
Cacti
El subdominio cacti muestra la version 1.2.28. Encontramos que esta version es afectada por una vulnerabilidad: CVE-2025-24367. Permite la creacion de archivos para la ejecucion remota de comandos (RCE). Aunque para ello es necesario tener acceso a cacti.

Password Spraying
Utilizamos un script en python para realizar Password Spraying con los usuarios conocidos hacia el login de cacti.
|
|
Se logro identificar un par de credenciales validas.
|
|
User - www-data (Docker)
CVE-2025-24367
Clonamos el repositorio CVE-2025-24367-Cacti-PoC que aloja el exploit para la vulnerabilidad anterior mencionada.
|
|
La flag -h indica los valores necesarios para la explotacion.
|
|
Se ejecuto el exploit indicando nuestra IP y puerto a la escucha para una shell inversa.
|
|
Shell
Con ello obtuvimos una shell como www-data.
|
|
En config.php se definen las variables para la conexion de base de datos de cacti.
|
|
En la raiz descubrimos el archivo .dockerenv lo cual indica que cacti corre en contenedor docker como se indicaba en el changelog.
|
|
Encontramos el codigo fuente de la aplicacion en el dominio principal tambien, las credenciales para la base de datos.
|
|
La base de datos tiene registrados la informacion de usuarios anterior observada en la API.
Dentro de la base de datos de Cacti se encontraron dos hashes para usuarios.
root via CVE-2025-9074 (Docker)
El Changelog muestra Docker Desktop 4.44.2, esta version permite acceder a contenedores Linux a la API de Docker a traves de la subnet por default (192.168.65.7:2375), esto permite administrar contenedores, crear nuevos contenedores e imagenes, con ello, posiblemente acceder al almacenamiento host de ejecutarse Docker en WSL, montando el disco host. Esto ultimo podria indicar el caso de la maquina, ya que el puerto WinRM esta a la escucha pero tenemos acesso a un contenedor Linux.
| Version | Date | Title | Change | Description |
|---|---|---|---|---|
| V.1.7 | May 16, 2025 | Infrastructure Notice | Infrastructure | Migrated MonitorsFour infrastructure to Windows and Docker Desktop 4.44.2, enabling containerized deployments for improved portability, scalability, and easier environment management. |
Verificamos con una solicitud curl a 192.168.65.7:2375/info, este muestra informacion de docker.
|
|
Port Forwarding
Ralizamos port forwarding para obtener el puerto e IP localmente con Chisel.
|
|
|
|
CVE-2025-9074
Clonamos el repositorio PoC-for-CVE-2025-9074 que aloja el exploit. Este inicia verificando que la API este presente, intenta obtener la imagen alpine para crear un contenedor al que finalmente se accede a traves de docker.
|
|
Tras ejecutar el exploit este logro la creacion del contenedor.
|
|
Especificamos la variable DOCKER_HOST y ejecutamos sh para acceder al contenedor, logrando acceso root y a la flag user.txt.
|
|
Tambien la flag root.txt.
|
|
User - Administrator
Localmente en el directorio de administrator encontramos multiples scripts restaurar al estado original la maquina, posiblemente ScheduledTask.
Generamos una shell inversa con revshells para powershell.
|
|
Agregamos la ejecucion al archivo container_cleanup.ps1.
|
|
Luego de varios segundos se ejecuto y logramos una shell como administrator.
|
|
Dump Hashes
Creamos un usuario y lo agregamos al grupo Administrators y Remote Management Users.
|
|
Verificamos los grupos.
|
|
evil-winrm-py nos permitio el acceso a la maquina.
|
|
Realizamos una copia de SYSTEM, SECURITY y SAM.
|
|
Localmente obtuvimos los hashes de todos los usuarios.
|
|