Exploiting CVE-2025-55182 React2Shell Vulnerability on Hack The Box Reactor Machine

A detailed walkthrough demonstrates remote code execution against a seasonal Hack The Box machine named Reactor by abusing the critical Next.js deserialization flaw CVE-2025-55182, also known as React2Shell. The attack begins with Nmap reconnaissance revealing an exposed Next.js service on port 3000, followed by Wappalyzer identification of an outdated framework version. Public exploit code is used to obtain an initial reverse shell as the node user without authentication. Credential access is achieved by extracting password hashes from the reactor.db SQLite database and cracking the engineer account with Hashcat against rockyou.txt. Privilege escalation leverages an exposed Node.js Inspector debug port on 9229, allowing WebSocket interaction via websocat to set the SUID bit on /bin/bash and obtain root access. The article highlights both the impact of the unauthenticated RCE vulnerability and common misconfigurations such as forgotten debug ports on production systems.

HabrTranslated from Russian

Read at source

A detailed technical walkthrough shows how the seasonal Hack The Box machine Reactor can be fully compromised by exploiting the critical Next.js deserialization vulnerability CVE-2025-55182, publicly known as React2Shell.

Initial reconnaissance with Nmap identifies an OpenSSH service on port 22 and a web application on port 3000. The application presents itself as a reactor monitoring dashboard built with an outdated version of the Next.js framework, confirmed via the Wappalyzer browser extension.

Searching for known issues immediately surfaces CVE-2025-55182, a 10.0 CVSS vulnerability that allows unauthenticated remote code execution through unsafe deserialization of HTTP request data. A public exploit repository is cloned and executed to obtain a reverse shell as the node user.

Further enumeration reveals the reactor.db SQLite database containing user password hashes. The hash belonging to the engineer account is cracked offline with Hashcat using the rockyou wordlist, enabling SSH login and retrieval of the user flag.

Privilege escalation is performed by discovering an active Node.js Inspector debug listener on port 9229 running as root. The websocat binary is transferred to the target, and a crafted WebSocket payload sets the SUID bit on /bin/bash, granting root privileges and access to the root flag.

The article concludes by noting that the vulnerability affected numerous React/Next.js applications in late 2025 and emphasizes the risks of leaving development debugging ports exposed on production servers.

Meridian digestThe week's most consequential security stories, distilled into one briefing.See the digest

More in Vulnerabilities & Exploits

Telegram for Android Patches Voice Call Vulnerability Enabling Code Execution
Yandex Patches Millions of Stations After eMudhra Certificate Keys Compromised
Cisco ASA and FTD Face DoS Vulnerability in SSL VPN Already Exploited in the Wild