Vulnerabilities & CVEs

React Server Components DoS Vulnerability: CVE-2026-23870 An

A critical denial-of-service vulnerability, CVE-2026-23870, has emerged, targeting React Server Components and frameworks like Next.js. This flaw allows unauthenticated attackers to crash servers with crafted HTTP requests.

React Server Components Hit by Critical DoS Flaw (CVE-2026-23870) — Threat Digest

Key Takeaways

  • CVE-2026-23870 is a critical DoS vulnerability affecting React Server Components and frameworks like Next.js.
  • Attackers can trigger excessive CPU consumption with unauthenticated, specially crafted HTTP requests.
  • The vulnerability stems from improper handling of cyclic data structures during request deserialization.
  • Imperva WAF customers are protected; other organizations must update affected packages immediately.

The air in the server room hums with a monotonous drone, a sound that usually signifies steady operation, but which, in light of CVE-2026-23870, now carries a faint whisper of impending chaos.

Researchers have blown the whistle on a rather nasty denial-of-service (DoS) vulnerability, CVE-2026-23870, that’s quietly lurking in React Server Components (RSC) and trickling down into popular frameworks like Next.js, specifically its App Router. This isn’t some abstract theoretical exploit; we’re talking about real-world applications grinding to a halt.

The core of the problem lies in how these RSC implementations handle the deserialization of incoming requests. Imagine a chef carefully preparing a complex dish, but a rogue ingredient, intentionally added by a saboteur, causes the entire kitchen to descend into a chaotic frenzy of overcooking and burning. That’s essentially what’s happening here. The vulnerability arises from improper handling of cyclic or recursively referenced data structures within the request payload. When the server attempts to process these malformed inputs, the deserialization logic gets stuck in a loop, repeatedly consuming the same data without properly marking it as processed. This leads to an uncontrolled spiral of CPU consumption.

What’s particularly insidious about this is the accessibility. An unauthenticated attacker doesn’t need any special privileges. They can simply craft a specific HTTP request—think of it as a digital poisoned chalice—and fire it at an exposed Server Function endpoint. The server, upon receiving this malformed data, chokes. It enters a high-CPU state, struggling to process the request, and can remain in this debilitating condition for extended periods before it finally gives up and throws an error. Crucially, because this error is catchable, the attacker can just keep sending these requests, maintaining the denial-of-service state and effectively knocking the application offline.

This vulnerability affects a range of critical components:

  • react-server-dom-webpack
  • react-server-dom-parcel
  • react-server-dom-turbopack

And the affected versions are widespread:

  • 0.0 through 19.0.4
  • 1.0 through 19.1.5
  • 2.0 through 19.2.4

Thankfully, patches are already available in newer releases:

  • 0.5
  • 1.6
  • 2.5

Modern web development, especially for high-traffic e-commerce sites, SaaS platforms, and API-driven services, leans heavily on RSCs. Next.js App Router deployments, given their prevalence, are therefore particularly exposed. This vulnerability isn’t about stealing data; it’s about rendering services unavailable, hitting businesses where it hurts most: their ability to operate.

The Attackers’ Playbook

What does this exploitation look like in the wild? We’re seeing techniques that involve:

  • Crafting cyclic model payloads specifically designed to trigger that recursive deserialization.
  • Repeatedly hitting Server Function endpoints to ensure the server stays bogged down.
  • Abusing the inner workings of the React Flight protocol’s request parsing.
  • Executing application-layer DoS attacks—low and slow, but devastatingly effective.
  • Automating scans to find vulnerable React and Next.js instances.

This isn’t your garden-variety volumetric DDoS attack that floods the network pipes. No, this is far more surgical, far more elegant in its destructive potential. It’s an application-layer attack that use a fundamental weakness in how servers process data, forcing disproportionate server-side computation with minimal incoming traffic. A handful of carefully crafted requests can bring a whole backend to its knees. Think of it as finding the one specific, perfectly placed brick that causes an entire wall to crumble, rather than just banging on it repeatedly.

Because React Server Components are heavily used in modern application architectures, particularly high-traffic ecommerce, SaaS, and API-driven environments, exploitation can have significant operational impact. Organizations using React Server Components, Next.js App Router, or related server-side rendering frameworks should immediately upgrade affected packages and review exposed application endpoints.

Here’s the thing: this vulnerability, CVE-2026-23870, really underscores a broader architectural shift and the security implications that come with it. Server-side rendering frameworks, especially those embracing component-driven architectures like RSC, offer incredible performance benefits. But they also introduce new attack surfaces. The reliance on complex deserialization logic, particularly when handling untrusted client input, is a recurring theme in security vulnerabilities. We’ve seen it in other serialization formats, and now it’s manifesting in the way modern JavaScript frameworks handle data transmission between client and server.

It’s a classic case of innovation outpacing security diligence. The race to build faster, more dynamic web applications has led to the adoption of powerful, albeit complex, rendering strategies. When these strategies involve complex data handling like deserialization, especially with recursive structures, the potential for abuse grows. The developers behind RSC and Next.js are undoubtedly brilliant, but the sheer complexity of these systems means that subtle bugs in core logic can have far-reaching consequences. The fact that it’s unauthenticated and targets a core function like request processing makes it a prime target for automated exploitation.

Imperva’s researchers have analyzed this and, importantly, have already deployed protections for their Cloud WAF and On-Prem WAF customers. So, while the vulnerability itself is serious, for those already under Imperva’s umbrella, the immediate threat is mitigated. For everyone else, this is a stark reminder to update your dependencies and, perhaps more importantly, to carefully consider the security posture of your server-side rendering implementations. The days of treating the server as an impenetrable fortress are long gone; it’s now a complex, interconnected system where every component needs vigilant scrutiny.

Is This a New Type of DoS Attack?

CVE-2026-23870 represents a specific implementation of an application-layer DoS attack, rather than an entirely new category. These attacks focus on overwhelming a server’s resources through legitimate-looking but maliciously crafted requests that exploit specific application logic, like deserialization bugs, rather than simply flooding the network. It’s about making the server do an inordinate amount of work for each incoming request.

Should I Worry About My Next.js App?

If your Next.js application uses the App Router and has exposed Server Function endpoints, you absolutely should worry and act. Ensure you’ve upgraded the relevant React Server Component packages to the patched versions (0.5, 1.6, or 2.5) immediately. Organizations using WAF solutions like Imperva are already protected against exploitation attempts.

What are React Server Components?

React Server Components (RSC) are a rendering model that allows React code to run exclusively on the server. This means the JavaScript bundle sent to the client is smaller, leading to faster initial load times and improved performance. They enable developers to build highly interactive and performant user interfaces by selectively rendering components on the server and client.


🧬 Related Insights

Maya Thompson
Written by

Threat intelligence reporter. Tracks CVEs, ransomware groups, and major breach investigations.

Worth sharing?

Get the best Cybersecurity stories of the week in your inbox — no noise, no spam.

Originally reported by Imperva Blog

Stay in the loop

The week's most important stories from Threat Digest, delivered once a week.