Navigation X
ALERT
Click here to register with a few steps and explore all our cool stuff we have to offer!



   808

⚠️React2Shell⚠️ CVE-2025-55182 - ✨Complete Technical Breakdown & Mitigation Guide✨

by Ping - 09 December, 2025 - 01:08 AM
This post is by a banned member (Ping) - Unhide
Ping  
Staff
3.276
Posts
89
Threads
Staff Team
7 Years of service
#1
═══════════════════════════════════════════════════════════
 
REACT2SHELL (CVE-2025-55182)
 
Critical Unauthenticated RCE in React Server
Components
 
CVSS Score: 10.0 (MAXIMUM SEVERITY)
Actively Exploited in Wild
 
═══════════════════════════════════════════════════════════
 

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? TABLE OF CONTENTS

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 
  • Executive Summary
  • Vulnerability Overview
  • Root Cause Analysis
  • Payload Structure & Gadget Chain
  • Exploitation Mechanics
  • Real-World Attack Scenarios
  • Detection & Evasion
  • Mitigation & Patching
  • PoC Resources & Tools

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? EXECUTIVE SUMMARY

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

React2Shell is a CVSS 10.0 
unauthenticated remote code execution vulnerability in 
React Server Components (RSC) and the Flight protocol, 
affecting React 19.x and Next.js 15-16.

The vulnerability stems from unsafe deserialization 
combined with server-side prototype pollution
allowing attackers to execute arbitrary JavaScript on 
vulnerable servers with no authentication required.

⚡ THIS IS A LOG4SHELL-SCALE EMERGENCY
PATCH IMMEDIATELY

Key Impact Points:
 
  • Zero Authentication Required
  • Exploitable with single HTTP POST request
  •  
  • Default Configuration Exposure
  • Vulnerable by default in Next.js App Router
  •  
  • Maximum Severity
  • CVSS 10.0 with full RCE capabilities
  •  
  • Actively Weaponized
  • Working PoCs available within 48 hours
  •  
  • Nation-State Deployment
  • Confirmed China-nexus APT exploitation
  •  
  • Widespread Internet Exposure
  • Thousands of vulnerable instances identified

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? VULNERABILITY OVERVIEW

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

What is React Server Components (RSC)?

React Server Components represent a paradigm shift 
in React applications. Introduced in React 19, RSC allows 
developers to render component trees on the server and 
serialize them to the client via the Flight protocol.


The Flight protocol uses custom serialization and 
deserialization to transmit RSC payloads between server 
and client. Unlike JSON, the Flight codec handles complex 
object graphs and promises, making it powerful but 
dangerous if not carefully implemented.


How RSC/Flight is Exposed

In Next.js 15/16 with App Router (the 
default), any application automatically exposes an RSC 
endpoint that listens for incoming Flight protocol requests. 
The endpoint is accessible at any route by including 
the Next-Action header in HTTP POST requests.


Critical Point: Even if a 
developer never explicitly defined any server actions, the 
vulnerability still exists. A blank Next.js application is 
fully exploitable without any additional code.


Root Cause: Where the Vulnerability Lives

The vulnerability exists in the deserialization 
logic of the Flight protocol codec
, specifically in the 
react-server-dom-* packages (webpack, turbopack, 
parcel variants).


The Core Issue: The 
decoder fails to properly validate object structure and 
types during reconstruction.

 
  1. No Type Checking - The getOutlinedModel 
    function allows unconstrained traversal through object 
    properties via reference syntax like $1:__proto__:then

  2.  
  3. Prototype Pollution Window - By 
    manipulating the __proto__ chain during deserialization, 
    attackers can pollute the prototype of objects in sensitive 
    contexts

  4.  
  5. Function Constructor Gadget - The 
    native Function() constructor is accessible as 
    Array.constructor.constructor and can be invoked via 
    object traversal


This is a textbook example of server-side 
prototype pollution
with gadget chain exploitation—the 
same vulnerability class that devastated frontend security, 
now on the backend.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? ROOT CAUSE ANALYSIS

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

The Vulnerable Code Pattern

The vulnerability manifests in the getOutlinedModel 
function, which reconstructs objects from reference strings 
in the Flight protocol:

Code:
function getOutlinedModel(response, reference, 
  parentObject, key, map) {
  var id = parseInt(
    (reference = reference.split(":"))[0], 16);
  switch (
    ("resolved_model" === 
      (id = getChunk(response, id)).status &&
    initializeModelChunk(id),
    id.status)
  ) {
    case "fulfilled":
      for (
        key = 1, parentObject = id.value;
        key < reference.length;
        key++
      )
      parentObject = parentObject[reference[key]];
      return map(response, parentObject);
  }
}

THE PROBLEM: The loop 
allows unrestricted traversal through any property chain. By 
crafting a reference like $1:__proto__:then, an attacker can 
access and modify the prototype chain of objects during 
deserialization.


Deserialization Process

When the Flight protocol payload arrives on the 
server, it's structured as multipart form data. Each 
form field contains a serialized chunk — either a JSON 
object, a reference string, or special markers.


Deserialization Steps:
 
  1. Parse Form Fields - Each field (0, 1, 
    2, ...) is parsed and registered as a chunk

  2.  
  3. Resolve Root Chunk - Deserialization 
    begins with a designated root chunk (e.g., chunk 0)

  4.  
  5. Process References - When a chunk 
    contains a reference string (e.g., $1), the deserializer 
    resolves it

  6.  
  7. Traverse Property Chain - If the 
    reference contains property accessors (e.g., $1:foo:bar), 
    the deserializer traverses: chunk_1.foo.bar

  8.  
  9. Invoke Handlers - Special reference 
    prefixes trigger custom handlers that can execute functions

  10.  
  11. Return Final Value - The reconstructed 
    object is returned to the application


The Promise Chain Trigger

A critical aspect of the vulnerability involves 
how promises are handled in the deserialization. When a 
chunk is marked as a promise (via the $@ prefix), the 
deserializer creates a pending promise and later resolves it.


Attackers can craft a malicious object whose 
.then() property points to a gadget chain that, when 
invoked, executes the Function constructor with attacker-
controlled code.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

⚙️ PAYLOAD STRUCTURE

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Anatomy of a Working PoC Payload

Here's a simplified breakdown of how a working 
exploit payload is structured. Modern payloads use several 
chunks that reference each other in a carefully crafted 
sequence:

Code:
Field 0: {
  "then": "$1:__proto__:then",
  "status": "resolved_model",
  "reason": -1,
  "value": "...",
  "_response": "$4"
}

Field 1: { /* placeholder chunk */ }

Field 2: "$@3"  /* Promise marker */

Field 3: []  /* Empty array becomes Function() */

Field 4: {
  "_prefix": "process.mainModule.require('child_process')
    .execSync('COMMAND');",
  "_formData": {
    "get": "$3:constructor:constructor"
  }
}

Payload Walkthrough
 
  1. Phase 1: Chunk Registration - All form 
    fields are parsed and stored in a chunk map with IDs and 
    metadata.

  2.  
  3. Phase 2: Root Deserialization Begins
    Starts with chunk 0 containing reference to $1:__proto__:then

  4.  
  5. Phase 3: Prototype Pollution - When 
    resolving $1:__proto__, the deserializer accesses the 
    __proto__ property of chunk 1, polluting the shared prototype

  6.  
  7. Phase 4: Promise Chain Setup - Chunk 0's 
    then property is set to the polluted handler. When processed, 
    .then() is called.

  8.  
  9. Phase 5: Function Constructor Access
    $3:constructor:constructor resolves to the native Function 
    constructor

  10.  
  11. Phase 6: Code Execution - The malicious 
    .then() handler invokes the gadget chain, calling Function() 
    with attacker code


Alternative Gadget Chains
 
  • child_process.execSync() - Direct 
    command execution (most common)

  • child_process.exec() - Async command 
    execution

  • fs.readFileSync() - File read gadget
  • vm.runInThisContext() - JavaScript 
    execution in current context

  • Module.require() - Dynamic module 
    loading for further exploitation


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? EXPLOITATION MECHANICS

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Basic Exploitation Flow
 
  1. Target Identification - Identify targets 
    running vulnerable Next.js or React RSC versions

  2.  
  3. Craft Payload - Generate malicious 
    Flight protocol payload with embedded commands

  4.  
  5. Deliver Payload - Send as multipart 
    form POST request with Next-Action header

  6.  
  7. Server-Side Processing - Vulnerable 
    server deserializes payload and executes code

  8.  
  9. Command Execution - Runs with Node.js 
    process privileges

  10.  
  11. Post-Exploitation - Establish reverse 
    shell, dump secrets, deploy malware


Real-World Command Examples

Reconnaissance Commands:

Show ContentSpoiler:

Credential Harvesting:

Show ContentSpoiler:

Malware Deployment:

Show ContentSpoiler:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? REAL-WORLD ATTACK SCENARIOS

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

The Exploitation Timeline
 
  • December 3, 2025 - Vulnerability 
    disclosed by Meta/Facebook

  • December 4 (Morning) - Working PoC 
    released by Moritz Sanft

  • December 4 (Evening) - Lachlan Davidson 
    releases refined PoC

  • December 4 (Night) - Metasploit module 
    published

  • December 5 - 800+ unique IPs scanning 
    for vulnerability

  • December 5 - Weaponized payloads 
    observed in the wild

  • December 5 - CISA adds to Known 
    Exploited Vulnerabilities list


This is the fastest weaponization of a web RCE 
vulnerability in recent history
.


China-Nexus APT Activity

According to Wiz, AWS, and Datadog telemetry, 
China-linked threat groups began exploitation within 24 
hours of PoC availability:


Attack Pattern 1: Credential 
Harvesting

 
  • Establish reverse shell within Node.js 
    process

  • Enumerate environment variables for secrets 
    (AWS keys, tokens, database passwords)

  • Recursively scan filesystem for sensitive 
    files

  • Dump /etc/passwd and other sensitive system 
    files

  • Exfiltrate findings to attacker infrastructure

Attack Pattern 2: Cloud Metadata 
Access

 
  • Probe for cloud metadata endpoints 
    (169.254.169.254)

  • Retrieve IAM role credentials with broad 
    permissions

  • Pivot to cloud infrastructure (S3, RDS, 
    Lambda, etc.)

  • Escalate privileges and move laterally

Attack Pattern 3: Cryptominer 
Deployment

 
  • Download XMRig (Monero cryptominer) from 
    attacker infrastructure

  • Execute with attacker-controlled Monero wallet 
    address

  • Establish persistence (nohup /var/tmp/crond)
  • Some variants use UPX-packed binaries and 
    privilege escalation (CVE-2021-4034)


Attack Pattern 4: Persistent 
Backdoor (Sliver)

 
  • Download Sliver C2 payload from dynamic DNS 
    infrastructure

  • Execute from writable temporary directory 
    (/tmp, /var/tmp)

  • Establish encrypted C2 communication with 
    attacker infrastructure

  • Enable interactive remote access for operator-
    driven exploitation


Known Infrastructure & IOCs

Malware Hosting Servers:

Show ContentSpoiler:

C2 & Infrastructure Domains:

Show ContentSpoiler:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

?️ DETECTION & EVASION

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Detection Methods

Signature-Based Detection

Characteristic HTTP Headers:
 
  • Next-Action header present in POST requests
  • Content-Type: multipart/form-data
  • Requests to known RSC paths: /, /_next/data/, 
    /api/rsc


Payload Signatures:
 
  • References containing __proto__: chain
  • References with constructor:constructor 
    pattern

  • _prefix field containing shell commands 
    (execSync, exec, spawn)

  • _formData containing get property

WAF Detection Rules:

Show ContentSpoiler:

Host-Level Indicators:
 
  • Unexpected shell processes (bash, sh, zsh, 
    PowerShell) spawned from Node.js

  • curl/wget processes executed by Node.js
  • Unexpected file modifications in /tmp or 
    /var/tmp

  • Unusual environment variable access or 
    exfiltration

  • Reverse shell connections from Node.js 
    process


Evasion Techniques

1. WAF Padding/Junk Data 
- Prepend large junk data to bypass WAF body inspection 
limits.


2. Alternative Reference Syntaxes 
- Use variations like $1:["__proto__"]["then"] or hex-
encoded property names.


3. Obfuscated Command 
Execution
- Use eval, Function(), or base64 
encoding to hide commands.


4. Vercel WAF Bypass 
- Use alternative multipart structures and form field 
ordering.


5. Chunked/Distributed 
Payloads
- Spread gadget chain across multiple 
chunks with obfuscated references.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? MITIGATION & PATCHING

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

IMMEDIATE ACTIONS (TODAY):
 
  1. Identify Affected Versions - Check 
    package.json for vulnerable versions of Next.js and React 
    RSC packages

  2.  
  3. Upgrade to Patched Versions - Next.js: 
    15.0.5+, 15.1.9+, 15.2.6+, 15.3.6+, 15.4.8+, 15.5.7+, 16.0.7+ 
    | React RSC packages: 19.0.1, 19.1.2, 19.2.1

  4.  
  5. Deploy Patches - Do not wait for 
    normal release cycles. This is a security emergency.


SECONDARY ACTIONS (WITHIN 48 
HOURS):

 
  1. Rotate Secrets & Credentials - Assume 
    all environment variables are compromised if server was 
    exposed

  2.  
  3. Security Audit & Incident Response
    Review logs for POST requests with Next-Action headers and 
    shell process execution

  4.  
  5. WAF & Network Hardening - Deploy rules 
    to block exploitation attempts and rate limit RSC endpoints


ONGOING ACTIONS (DAYS 3-7):
 
  1. Post-Breach Investigation - If 
    compromise suspected, engage incident response team and 
    collect forensic evidence

  2.  
  3. Long-Term Security Improvements
    Implement least privilege, restrict outbound network access, 
    deploy RASP solutions


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

? POC RESOURCES & TOOLS

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

OFFICIAL INFORMATION & 
DISCLOSURES

 
TECHNICAL ANALYSIS & DEEP 
DIVES

 
PROOF-OF-CONCEPT EXPLOITS
 
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

⚠️ FINAL WARNINGS

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

THIS VULNERABILITY IS:
 
  • CVSS 10.0 - Maximum severity
  • Unauthenticated - No credentials 
    needed

  • Default-Vulnerable - Exploitable on 
    blank applications

  • Trivially Exploitable - Single HTTP 
    POST request achieves RCE

  • Weaponized - Working PoCs, Metasploit 
    modules, automated scanners

  • Actively Exploited - Confirmed in-the-
    wild by nation-state groups

 
═══════════════════════════════════════════════════════════
 
IF YOU RUN REACT SERVER
COMPONENTS IN PRODUCTION:
 
═══════════════════════════════════════════════════════════

DO NOT:
 
  • ❌ Wait for normal patch deployment windows
  • ❌ Assume your server is secure because it's 
    not publicly listed

  • ❌ Rely solely on WAF/firewall protection
  • ❌ Skip credential rotation if previously 
    exposed


DO:
 
  • ✅ Patch immediately (today if possible)
  • ✅ Assume breach if server was exposed before 
    Dec 3 at any point

  • ✅ Rotate all secrets and credentials 
    immediately

  • ✅ Deploy detection rules and WAF 
    protections

  • ✅ Monitor outbound network traffic from 
    application servers

 
═══════════════════════════════════════════════════════════
 
Document compiled from authoritative 
sources including Meta, Vercel, AWS, Wiz, Datadog, Rapid7, and 
active threat intelligence.
 
Last updated December 8, 2025
 
═══════════════════════════════════════════════════════════
 
[Image: horusgif2.gif]
 paid ad - 05/15/2026

   [Selling Signature Ad Space - DM Me]
 
[Ping's PGP Key]
Before conducting any form of business confirm my identity through onsite PM.
This post is by a banned member (Coronavac) - Unhide
Coronavac  
Contributor
2.758
Posts
377
Threads
5 Years of service
#2
HQ Ping thread
This post is by a banned member (Eminem) - Unhide
Eminem  
Staff
3.635
Posts
592
Threads
Staff Team
5 Years of service
#3
Wow
# CHEAPEST UPGRADE'S on your OWN ACCOUNT, 100% LEGAL
[Image: C2NgFpu.gif]
06/05/2026
[Image: uWztodn.gif]
04/06/2026
I don't MM - Always confirm any deal on-site!
This post is by a banned member (Danger) - Unhide
Danger  
Heaven
1.386
Posts
628
Threads
7 Years of service
#4
Another day another banger  [Image: wow.gif]
GGWP
This post is by a banned member (Ping) - Unhide
Ping  
Staff
3.276
Posts
89
Threads
Staff Team
7 Years of service
Bumped #5
This is a bump
This post is by a banned member (Danger) - Unhide
Danger  
Heaven
1.386
Posts
628
Threads
7 Years of service
#6
Bumperino
GGWP
This post is by a banned member (Sc00bii) - Unhide
Sc00bii  
Registered
852
Posts
229
Threads
7 Years of service
#7
This is a bump
VelocityRDP.pro | "CRACKEDSH" for 10% off your order.
[Image: WEcKbCO.png]

DONT DEAL WITH IMPOSTERS ALWAYS CONFIRM ON CRACKED.SH IN PM IF ITS ME
 
This post is by a banned member (Ping) - Unhide
Ping  
Staff
3.276
Posts
89
Threads
Staff Team
7 Years of service
Bumped #8
This is a bump

Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
or
Sign in
Already have an account? Sign in here.


Forum Jump:


Users browsing this thread: 1 Guest(s)