Back

Updated: December 5, 2025
TL;DR:
A fundamental flaw has been identified in the deserializer component of React Server Components (RSC), within the react-server package. This component handles the "Flight" protocol - the serialization format used to stream data between the server and client.
The vulnerability stems from insecure deserialization. The Flight protocol was originally designed with the assumption that it would only process trusted signals from the React client. However, because modern meta-frameworks like Next.js expose these RSC endpoints publicly to serve UI components, they are accessible to any user on the internet.
Attackers can take advantage of this issue by sending a specially crafted Flight payload that targets the constructor property of an object on the server. Since the server deserializes this data without checking whether that property is safe to use, it unintentionally exposes the global Function constructor. This gives the attacker a powerful entry point to run custom code.
To exploit this, the attacker includes a string that becomes the arguments for a new function. By inserting a semicolon (;), they break out of the expected context and append their own JavaScript commands. This lets them load and run a dangerous object, such as child_process.execSync - directly inside the server’s process. Once they can do that, they can execute any system command, resulting in full Remote Code Execution (RCE).
Exploitation requires zero authentication. A standard deployment, built for production, is vulnerable out of the box with no additional code changes required by the developer.
Initially, CVE-2025-66478 was assigned to Next.js to track the vulnerability within that specific framework.
Status Update: CVE-2025-66478 has now been rejected as a duplicate of CVE-2025-55182.
Security teams should audit their environments for public-facing Node.js applications and apply the following updates immediately:
1. Next.js (App Router) Upgrade to one of the following patched versions based on your current branch:
2. React (Standalone) If you are using react-server directly (outside of a meta-framework), upgrade to:
Secure your spot by leaving your email