This machine was a nice change of pace. Instead of the usual web-heavy approach, it introduced VoIP services, credential reuse, and a small reverse-engineering exercise at the end. A good reminder that not every box starts (or ends) with HTTP.

NMAP

The standout port here was 5038 — Asterisk Call Manager. That immediately suggested VoIP-related attack paths.

HTTP (80)

The website on port 80 was very basic.

Default checks

  • Gobuster → nothing useful
  • FFUF → nothing useful
  • Source code review → nothing useful

Clicking the Download button returned a compiled Python file. Decompiling it using uncompyle6 revealed the following encoded content:

Running the extracted data through CyberChef produced:

Good job, user “admin” the open source framework for building communications, installed in the server.Good job reverser, python is very cool!Good job reverser, python is very cool!Good job reverser, python is very cool!

The interesting part here was the username admin — potentially useful elsewhere. The web path ended here, so I shifted focus to the remaining open ports.

VoIP (5038)

Port 5038 was running Asterisk Call Manager 5.0.2. After some research, I found that it’s often misconfigured and sometimes vulnerable to credential brute forcing. Metasploit includes a module specifically for this. After some trial and error (and one VM crash), I configured it and ran the attack.

Eventually, I recovered valid credentials.

Logging in was successful — important detail: you need to press Enter twice for commands to execute properly.

SIP Enumeration & Credential Reuse

Enumerating SIP users revealed multiple accounts, including harry.

On a hunch, I tried reusing the recovered password for SSH access as harry. And it worked.

Privilege Escalation

With SSH access as harry, I started looking around the home directory. One file immediately stood out: Example_root.jar I downloaded the file and decompiled it using JD-GUI. The decompiled source showed the following logic:

The logic was simple:

  • If /tmp/flag.dat exists
  • The program writes to root.txt in Harry’s home directory

All that was needed was to create the file:

After a short wait, the file appeared — and with it, the final flag. (I forgot to take a screenshot of the exact moment, but here’s proof the room was completed.)

Learning Notes

  • Reverse engineering isn’t always complex — sometimes it’s just understanding basic logic.
  • Decompiled files (Python, Java, binaries) often contain direct hints.
  • VoIP services are worth enumerating — they’re frequently overlooked.
  • Credential reuse is still incredibly common.
  • Follow the breadcrumbs — every step in this box hinted at the next.

Final Thoughts

This challenge was a great mix of:

  • non-standard services (VoIP),
  • light reverse engineering,
  • and simple but effective privilege escalation.

Not flashy — just solid enumeration and logical progression. Exactly the kind of box that reinforces fundamentals.