Investigadores revelan vulnerabilidad con puntuación perfecta — CVE-2025-55182 en React Server convierte cualquier servidor vulnerable en una puerta abierta para hackers

Desarrolladores y administradores de sistemas de todo el mundo están actualizando urgentemente sus servidores tras la revelación de una vulnerabilidad crítica en React Server que permite a un atacante ejecutar código de forma remota sin autenticación con una sola petición HTTP. El exploit ya está disponible públicamente, y el problema recibió la máxima puntuación de peligrosidad — 10 de 10 según CVSS.
React se usa activamente en servidores para acelerar la entrega de JavaScript y contenido: en lugar de recargar la página por completo en cada petición, vuelve a renderizar solo las partes de la interfaz que han cambiado. Esto ahorra recursos de forma significativa y aumenta la velocidad de las aplicaciones. Según estimaciones, React está presente en alrededor del 6% de todos los sitios web y en cerca del 39% de los entornos en la nube, por lo que la vulnerabilidad afecta a una gran parte de la infraestructura.
Los especialistas de Wiz informan que para explotar la vulnerabilidad basta con una única petición HTTP especialmente formada, y en sus pruebas la eficacia del ataque fue «casi del 100%». Además, existe riesgo adicional porque muchos frameworks y bibliotecas populares integran React Server por defecto. Como resultado, pueden verse afectadas incluso aplicaciones que no usan directamente la funcionalidad de React, pero cuyo nivel de integración llama de todas formas al código vulnerable.
Precisamente la combinación de la amplia difusión de React, la facilidad de explotación y la posibilidad de tomar el control completo del servidor llevó a la máxima calificación de criticidad. En redes sociales, profesionales de seguridad y desarrolladores instan a no retrasar la actualización ni un minuto. «Normalmente no lo digo así, pero corríjanlo ahora mismo, maldita sea», escribe uno de los especialistas, subrayando que la vulnerabilidad de React con el identificador CVE-2025-55182 es la «diez perfecta».
Resultaron afectadas las versiones de React 19.0.1, 19.1.2 y 19.2.1. También se consideran vulnerables componentes de terceros que usan React Server Components: los complementos Vite RSC y Parcel RSC, la versión preliminar de React Router RSC, RedwoodSDK, Waku, así como Next.js. Para Next.js la vulnerabilidad se sigue de forma separada bajo el identificador CVE-2025-66478.
Según los datos de Wiz y Aikido, el problema está relacionado con la deserialización insegura en Flight, el protocolo que se utiliza en React Server Components. La deserialización es el proceso por el que cadenas, flujos de bytes y otros «serializados» se convierten de nuevo en objetos y estructuras en memoria. Si este proceso está mal implementado, un atacante puede introducir datos especialmente formados que cambien la lógica de ejecución del código en el servidor.
«Cuando el servidor recibe un payload especialmente formado e incorrecto, comprueba mal su estructura», explican en Wiz. «Esto permite que datos controlados por el atacante influyan en la ejecución de la lógica en el servidor y acaben provocando la ejecución de código JavaScript con privilegios». En sus experimentos la empresa logró explotación persistente con casi una tasa de éxito del cien por cien y la posibilidad de ejecución remota completa de código. El ataque no requiere autenticación, se realiza de forma remota y funciona contra configuraciones «por defecto» en muchos frameworks populares.
Los desarrolladores de React ya publicaron actualizaciones en las que se refuerza la verificación de los datos entrantes y se endurece el comportamiento de la deserialización para cerrar la posibilidad de ataques similares.
Wiz y Aikido recomiendan encarecidamente a administradores y desarrolladores actualizar cuanto antes React y todas las dependencias que lo utilicen, además de seguir atentamente las recomendaciones de los mantenedores de los frameworks y complementos mencionados. Aikido además aconseja buscar el uso de React en la base de código y en los repositorios de los proyectos para asegurarse de que todos los componentes potencialmente vulnerables han recibido correcciones.