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 — react CVE-2025-55182 | Kitploit
Tools/GitHubGitHub/tanvirahmedcs/cve-2025-55182
Vulnerability ScannersWeb Vulnerability ScannersVulnerability AnalysisExploitationWeb Application ExploitationPenetration Testing
GitHubtanvirahmedcs/cve-2025-55182

CVE-2025-55182

react CVE-2025-55182

View Repository
33 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 — React Server Components Unauthenticated RCE

Severity: Critical — CVSS 10.0
CWE: CWE-502 (Deserialization of Untrusted Data)
Vendor: Meta (Facebook)
Disclosed: December 3, 2025


Overview

CVE-2025-55182 is a maximum-severity unauthenticated remote code execution (RCE) vulnerability in React Server Components (RSC), dubbed React2Shell. The flaw lives in how React decodes payloads sent to React Server Function endpoints via the Flight protocol. An attacker can send a single, specially crafted HTTP POST request to a vulnerable server and execute arbitrary code — no credentials, no user interaction required.

Applications that do not expose explicit Server Function endpoints are still vulnerable if they support React Server Components.


Affected Packages & Versions

Download Tool
PackageVulnerable VersionsPatched Versions
react-server-dom-webpack19.0.0, 19.1.0, 19.1.1, 19.2.0≥ 19.0.1 / 19.1.2 / 19.2.1
react-server-dom-parcel19.0.0, 19.1.0, 19.1.1, 19.2.0≥ 19.0.1 / 19.1.2 / 19.2.1
react-server-dom-turbopack19.0.0, 19.1.0, 19.1.1, 19.2.0≥ 19.0.1 / 19.1.2 / 19.2.1

Affected frameworks (when using vulnerable React packages): Next.js 15.x / 16.x (App Router), React Router, Waku, RedwoodSDK, Parcel RSC, Vite RSC plugin.


CVSS v3.1 Breakdown

MetricValue
Attack VectorNetwork
Attack ComplexityLow
Privileges RequiredNone
User InteractionNone
ScopeChanged
ConfidentialityHigh
IntegrityHigh
AvailabilityHigh
Overall Score10.0 (Critical)

Vector string: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H


How the Vulnerability Works

React Server Components use a binary wire format called the Flight protocol to stream component trees from server to client. The same protocol handles Server Functions (formerly Server Actions) — callable endpoints that accept serialised arguments from the browser.

The vulnerability is in the deserialiser: when React processes a Flight payload it can be tricked into instantiating arbitrary server-side objects, leading to full RCE. Because the Flight endpoint is exposed by default whenever RSC is enabled, and because no authentication gate exists at the protocol level, exploitation requires only network access to the server.


Nuclei Template

The included template CVE-2025-55182.yaml uses three complementary detection methods.

Request 1 — Generic RSC Flight Endpoint Probe

Sends a minimal POST with Content-Type: text/x-component to the root path. A vulnerable (or reachable) RSC server responds with the same content-type and a Flight stream body whose rows begin with alphanumeric row IDs followed by a colon (e.g. 0:, 1:) or React reference sigils ($L, $S, $I, $@).

root@kitploit:~
POST / HTTP/1.1
Content-Type: text/x-component
Accept: text/x-component, */*

Match condition: HTTP 200 + text/x-component header + Flight stream regex in body.

Request 2 — Next.js App Router RSC Probe

Next.js signals RSC requests via the RSC: 1 header and ?_rsc= query parameter. This request mimics a browser prefetch to confirm the App Router Flight endpoint is reachable.

root@kitploit:~
GET /?_rsc=1 HTTP/1.1
Accept: text/x-component
RSC: 1
Next-Router-State-Tree: %5B%22%22%2C%7B%7D%5D

Match condition: HTTP 200 + text/x-component header.

Request 3 — Server Function (Action) Endpoint Probe

Posts a minimal malformed Flight payload alongside a Next-Action header (the mechanism used to invoke Server Functions). A vulnerable server attempts to deserialise the payload; even an error response that includes RSC-specific headers confirms the endpoint exists.

root@kitploit:~
POST / HTTP/1.1
Content-Type: text/x-component
Next-Action: 0000000000000000000000000000000000000000

Match condition: HTTP 200/400/500 + text/x-component or x-action-revalidated header.

File-Based (Passive) Detection

Scans local *.json files (e.g. package-lock.json, yarn.lock) for the vulnerable package names combined with a version regex matching 19.0.0, 19.1.0, 19.1.1, or 19.2.0. Useful for auditing repositories or CI pipelines without sending any network traffic.


Usage

Prerequisites

  • Nuclei v3.x or later
root@kitploit:~
# Install / update Nuclei
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest

Active scan — single target

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -u https://target.example.com

Active scan — list of targets

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -l targets.txt

Passive scan — local project directory

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -target ./path/to/project

Verbose output with JSON reporting

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -u https://target.example.com -v -je results.json

Scan with rate limiting (recommended for production targets)

root@kitploit:~
nuclei -target CVE-2025-55182.yaml -u https://target.example.com -rl 10 -timeout 10

Remediation

Upgrade immediately to a patched version:

root@kitploit:~
# npm
npm install react-server-dom-webpack@latest

# yarn
yarn upgrade react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack

# pnpm
pnpm update react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack

Minimum safe versions per branch:

BranchMinimum Safe Version
19.0.x19.0.1
19.1.x19.1.2
19.2.x19.2.1

Temporary mitigations (if upgrading is not immediately possible):

  • Block HTTP POST requests to RSC/Flight endpoints at the WAF or reverse-proxy layer.
  • Disable React Server Components entirely until a patch can be applied.
  • Deploy a WAF rule targeting the text/x-component content type on inbound POST requests (Google Cloud Armor rules are publicly available for this CVE).

Notes & Limitations

  • A positive match on the HTTP probes confirms the Flight endpoint is reachable, which is a strong indicator of vulnerability. Exact version confirmation requires inspecting package-lock.json, node_modules, or an SBOM.
  • The template does not send a weaponised payload; it is detection-only and safe to run against production systems.
  • Applications that do not use React Server Components (client-side-only React apps) are not affected.

References

  • React official advisory — react.dev
  • GitHub Security Advisory — GHSA-fv66-9v8q-g76r
  • NVD — CVE-2025-55182
  • Zscaler ThreatLabz — React2Shell
  • Google Cloud Blog — Threat Actors Exploit React2Shell
  • Palo Alto Unit 42 — CVE-2025-55182 Exploitation

Disclaimer

This template is intended for authorised security testing and vulnerability assessment only. Running it against systems you do not own or have explicit written permission to test may be illegal. The authors accept no liability for misuse.