
Analisi tecnica dettagliata di CVE-2025-55182 (React2Shell), una vulnerabilità critica di RCE nei React Server Components, inclusi i pacchetti interessati, le meccaniche di sfruttamento e le indicazioni per il patching.
CVE-2025-55182 (“React2Shell”) è una critica vulnerabilità di Remote Code Execution (RCE) all'interno di React Server Components (RSC) — in particolare nella logica di deserializzazione del protocollo React Flight.
Il motore lato server di React analizza in modo errato i dati provenienti dal browser.
Un attaccante può inviare una richiesta HTTP appositamente costruita al tuo server.
Tale richiesta inganna il runtime server di React facendogli eseguire JavaScript arbitrario lato server.
Questo consente agli attaccanti di:
create-next-appSe il nostro sito utilizza React 19 OPPURE Next.js con App Router, dobbiamo presumere di essere vulnerabili finché non viene applicata la patch.
Un elenco completo e verificato dei pacchetti e delle versioni interessati:
| Package | Versioni vulnerabili | Versioni corrette |
|---|---|---|
react-server-dom-webpack | 19.0.0, 19.1.0, 19.1.1, 19.2.0 | 19.0.1, 19.1.2, 19.2.1 |
react-server-dom-parcel | come sopra | come sopra |
react-server-dom-turbopack | come sopra | come sopra |
Questi pacchetti sono collegati a React Server Components (RSC) — la causa principale.
Questi framework usano RSC internamente, quindi hanno ereditato la vulnerabilità:
| Framework / Strumento | Colpito? | Note |
|---|---|---|
| Next.js (App Router) | Sì | Il più gravemente colpito. La vulnerabilità è tracciata come CVE-2025-66478 (ora confluita in CVE-2025-55182). |
| Plugin RSC per Vite | Sì | Qualsiasi installazione che usi React Server Components. |
| Plugin RSC per Parcel | Sì | Stesso motivo. |
| Anteprima RSC di React Router | Sì | Include la logica server RSC. |
| RedwoodJS RSC (RedwoodSDK) | Sì | Usa il runtime RSC. |
| Waku | Sì | Runtime sperimentale basato su RSC. |
| Qualsiasi framework che includa il server RSC di React 19 | Sì | È necessario controllare i relativi advisory. |
La guida ufficiale e completa alla sicurezza per restare al sicuro.
Aggiorna alle versioni corrette:
"react-server-dom-webpack": "19.0.1" or "19.1.2" or "19.2.1"
"react-server-dom-parcel": "same"
"react-server-dom-turbopack": "same"
Esegui:
npm install react-server-dom-webpack@latest react-server-dom-parcel@latest react-server-dom-turbopack@latest
Aggiorna alle versioni corrette di Next.js:
| Versione principale | Versione sicura |
|---|---|
| 14.x (stabile) | Ultima release di sicurezza 14.x |
| 15.x | 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 |
| 16.x | 16.0.7 |
Esegui:
npm install next@latest
Soluzione alternativa (fix temporaneo e meno raccomandato dalla documentazione ufficiale)Questo non risolve completamente il problema — ma riduce l'esposizione per un breve periodo:
Blocca o limita le richieste POST multipart/form-data verso:
/app//actionsGli attaccanti si affidano a chunk multipart malformati per attivare lo sfruttamento.