RCE Vulnerability in React and Next.js

Vulnerability scope and severity

  • Discussion centers on a CVSS 10.0 RCE in React Server Components / Server Functions, as used by Next.js and other meta‑frameworks.
  • While React itself is ubiquitous, some argue RSC usage is still relatively niche; others note real-world usage is largely hidden behind frameworks like Next.js.
  • Several comments question CVSS inflation in general, but most agree this one plausibly deserves a 10.0 given unauthenticated RCE on the backend.
  • There is concern that many production apps lag on framework upgrades, so the bug will persist in the wild for years.

Root cause and exploit mechanics

  • The core problem: unsafe deserialization of untrusted HTTP payloads into server function/module lookups, then invoking whatever the client names.
  • Patches appear to tighten this by checking hasOwnProperty and whitelisting exports, to avoid prototype-chain gadgets like constructor.
  • Commenters stress this is a classic “deserialize untrusted input into code objects” error, seen across many languages.
  • Several public PoCs are discussed; some are called out as AI-generated or invalid because they rely on explicitly exposing dangerous functions rather than exploiting the real automatic surface.

Critique of RSC and RPC-style design

  • Many see this as the “worst-case” realization of long‑standing warnings about blurring client/server boundaries and hiding RPC behind “magic”.
  • Critics argue that serious RPC systems use explicit schemas and service definitions, whereas RSC exposes whatever the bundler can see and lets the client ask for it.
  • Supporters counter that RSC gives powerful “backend-for-frontend” composition, optionality in where code runs, and cleaner coupling between view logic and data-fetching.
  • Several note that making crossings “seamless” harms reasoning about security and performance; some label the design “sloppy”, others call it inherently error‑prone even if carefully implemented.

Operational mitigations and disclosure issues

  • Major platforms (Vercel, Cloudflare, AWS WAF, Netlify, Deno Deploy) rolled out WAF rules or platform mitigations; maintainers still urge immediate upgrades of React/Next and peers.
  • European operators complain the coordinated disclosure timeline and US‑centric coordination left them patching late at night while seeing exploit attempts in logs.

Ecosystem and framework fallout

  • The incident fuels broader skepticism about running JavaScript on the backend, npm’s supply-chain risk, and the increasing complexity of React (hooks, RSC, server actions).
  • Some reaffirm preference for simpler patterns: pure SPAs, classic SSR, static builds, or alternatives like htmx, Svelte, Vue, Angular, Preact, or custom RPC.
  • Others defend React’s core rendering model but agree that recent server-centric features introduce disproportionate complexity and risk.