
Este repositorio documenta la investigación sobre el comportamiento de deserialización dentro de los Componentes del Servidor React (RSC) de Next.js utilizando el protocolo Flight. Se centra en cómo los cuerpos multiparte malformados combinados con el manejo de solicitudes de Acción del Servidor pueden conducir a la travesía de prototipos y primitivas de ejecución en ciertas compilaciones.
Este repositorio documenta la investigación sobre CVE-2025-55182, también conocido como React2Shell, una vulnerabilidad crítica de deserialización insegura en los Componentes del Servidor de React (RSC) y los frameworks que integran el protocolo RSC Flight, especialmente Next.js App Router.
El enfoque aquí está en cómo las cargas útiles malformadas de RSC / Flight combinadas con el manejo de Funciones del Servidor (Server Actions) pueden llevar a la ejecución de JavaScript controlado por el atacante en el servidor.
Este material es para comprensión defensiva, reproducción controlada en laboratorio y documentación. No es un kit de explotación listo para usar. Solo pruebe contra sistemas que posea o para los que tenga autorización explícita por escrito.
El error principal está en la implementación del lado del servidor de RSC Flight. Afecta a los siguientes paquetes npm y versiones:
Paquetes y versiones vulnerables (Vulert)
react-server-dom-webpack
react-server-dom-parcel
react-server-dom-turbopack
Versiones parcheadas (según el aviso de React) (Vulert)
Cualquier aplicación que use React 19 con RSC y uno de los paquetes vulnerables debe considerarse afectada hasta que se actualice, incluso si no define explícitamente Funciones del Servidor.
Next.js hereda la implementación vulnerable de RSC cuando usa App Router. El problema se rastrea como CVE-2025-66478 para Next.js y también tiene una calificación CVSS 10.0. (SOCRadar® Cyber Intelligence Inc.)
Versiones vulnerables de Next.js (App Router)
Todas las compilaciones que usan React 19 RSC con:
next 15.x anterior a:
next 16.x anterior a 16.0.7
Compilaciones canary desde 14.3.0-canary.77 y versiones canary posteriores antes de las correcciones
En la práctica, esto significa:
create-next-app por defecto que usen App Router y React 19 están dentro del alcance a menos que se actualicen.No afectado en este CVE (según la guía del proveedor) (Black Kite)
Cualquier framework o empaquetador que incluya los paquetes RSC vulnerables puede verse afectado. Los ecosistemas actualmente listados incluyen: (Vulert)
@parcel/rsc@vitejs/plugin-rscSi un stack usa React 19 más uno de los paquetes react-server-dom-* vulnerables, suponga que está afectado hasta que se demuestre lo contrario.
Según avisos públicos y documentos de proveedores, la explotación tiene las siguientes características: (Vulert)
Autenticación
Configuración
react-server-dom-* vulnerablechild_process.exec ellos mismosExposición de red
Flujo de ataque (alto nivel)
Las evaluaciones CVSS 3.1 describen esto como:
En entornos de prueba controlados, utilizando versiones vulnerables y configuraciones con RSC habilitado, investigadores y proveedores informan: (SOCRadar® Cyber Intelligence Inc.)