$ cat writeup.md…
$ cat writeup.md…
hackthebox
Task: exploit a Next.js 16.0.6 application with React Server Components. Solution: use the React2Shell vulnerability (CVE-2025-55182) to achieve pre-auth RCE via prototype chain traversal in the Flight protocol, exfiltrating command output through the X-Action-Redirect header.
$ cat /etc/rate-limit
Rate limit reached (20 reads/hour per IP). Showing preview only — full content returns at the next hour roll-over.
NexusAI's polished assistant interface promises adaptive learning and seamless interaction. But beneath its reactive front end, subtle glitches hint that user input may be shaping the system in unexpected ways. Explore the platform, trace the echoes in its reactive layer, and uncover the hidden flaw buried behind the UI.
Target: http://83.136.255.53:40960
{ "name": "react2shell", "version": "1.0.0", "dependencies": { "next": "16.0.6", "react": "^19.0.0" } }
Critical indicators:
react2shell - direct hint to the vulnerability!The package name pointed directly to CVE-2025-55182 (also known as CVE-2025-66478):
The vulnerability exists in React's Flight protocol implementation (ReactFlightReplyServer.js). The getOutlinedModel() function lacks a hasOwnProperty check when traversing object paths:
// Vulnerable code in getOutlinedModel() for (let i = 1; i < path.length; i++) { value = value[path[i]]; // No hasOwnProperty check! }
This allows an attacker to traverse the prototype chain using references like $1:__proto__:then, which:
Chunk.prototype.thenFunction constructorchild_process.execSync()...
$ grep --similar