Frontend & Web

React Next.js DoS Vulnerability: Deno Protected

Everyone figured React Server Components were the future of server-side rendering—bulletproof, shiny. Then this DoS bomb drops, hanging servers with one bad request. Deno swoops in; others scramble.

Server crash graphic with React and Next.js logos, Deno shield protecting

Key Takeaways

  • High-severity DoS in React Server Components/Next.js hangs servers via infinite loop deserialization.
  • Deno Deploy auto-patched all users with runtime mitigations—others must manually upgrade immediately.
  • Second major RSC vuln in weeks; echoes early Node.js security woes, urging framework rethink.

Everyone was buzzing about React Server Components—like they’d finally cracked the code on smoothly server-side rendering, no more hydration headaches, just pure speed. Next.js apps flying high on Vercel, Deno, wherever. Then bam. A DoS vulnerability turns that dream into a nightmare, and Deno Deploy users are the only ones not sweating bullets.

This changes everything. Or at least, it should jolt devs out of their complacency.

React/Next.js Denial-of-Service Vulnerability: The Ugly Details

Look, a high-severity DoS flaw (CVE-2025-55184) in React Server Components. Attacker crafts a sneaky HTTP request. Deserialization kicks off an infinite loop. Server hangs. Dead. No more requests served. It’s that simple, that brutal.

Affected? Next.js App Router on 13.3+, 14, 15, 16. React Router RSC. Waku. Parcel RSC plugin. Vite RSC. RedwoodSDK. If you’re running any of that without patches, you’re a sitting duck.

Deno didn’t wait around. On December 11th, 2025, they rolled out runtime-level mitigations across Deno Deploy—new, classic, subhosting. Your apps there? Protected. Automatically. No fuss.

But here’s the kicker. Even if you patched that earlier RCE bug (CVE-2025-55182) from December 3rd, you’re still exposed. Upgrade again. Now.

“This vulnerability exists in React Server Components. It allows an attacker to hang a server by sending a specifically crafted HTTP request that, when deserialized, causes an infinite loop.”

That’s straight from the disclosure. Chilling, right? One request, and poof—your production server is toast.

Why Deno Deploy Users Are Smirking

Deno’s move? Genius. Or desperate PR spin—you decide. They implemented a runtime-level mitigation, not some half-baked WAF that’d flag legit traffic. WAFs won’t cut it here; too many false positives.

Users on Deno Deploy: Sleep easy. For now. They still nudge you to patch your libs anyway—smart, since you’ll deploy elsewhere someday.

Patch list, because I’m not your mom:

Next.js 16: 16.0.9+ Next.js 15: 15.5.8+ (or patch minors like 15.4.9) Next.js 14/13.3+: 14.2.34+ Others: react-server-dom-webpack/etc to 19.2.2+

Deno users? deno update next@latest. Easy.

And credit where due: Meta Security, Vercel/Next.js team coordinated the disclosure. Shoutout to RyotaK at GMO Flatt Security for finding it.

But let’s not kid ourselves—this is the second React Server Components vuln in weeks. Remember that RCE? History repeating: Shiny new tech, rushed to market, security as an afterthought. Smells like the early Node.js days, when every other package had a supply-chain hole. Bold prediction: If React doesn’t lock this down, we’ll see framework fatigue. Devs bolt to something battle-tested, like… I dunno, SvelteKit? Or back to plain Express.

Is This the End of React Server Components?

Nah. But it’s a wake-up call. RSC promised the world—colocated components, zero-bundle streaming, all that jazz. Now it’s delivering server crashes instead.

The real issue? Deserialization in server components. It’s like handing attackers a loaded gun labeled ‘parse this.’ Infinite loops aren’t rocket science; they’re low-hanging fruit for anyone with Burp Suite and spite.

Vercel? Crickets so far beyond patches. Their empire’s built on Next.js—downtime hits their bottom line hardest. Expect spin: ‘We’ve fixed it faster than you can say monorepo.’

Deno, though—playing the hero. Runtime mitigations mean they’re rewriting the rules on edge security. (Or just papering over cracks.) Either way, it’s a flex. If you’re eyeing deployments, Deno Deploy just climbed my list.

Short version: Patch. Yesterday.

Here’s the thing—corporate hype around RSC ignored the basics. Server-side anything invites DoS if you don’t sandbox deserialization. This isn’t new; it’s Log4Shell lite for frontend devs. My unique take? Parallels the XMLHttpRequest era: Browsers got Same-Origin Policy after years of XSS chaos. React needs an RSC sandbox yesterday, or Next.js bleeds users to Rust-based alternatives like Leptos.

And yeah, coordinated disclosure is great. But two vulns in 8 days? That’s not coordination; that’s a fire drill.

Why Does This Matter for Next.js Developers?

You’re building the next unicorn app. One bad request from a bored script kiddie, and it’s offline. Costs? Thousands per hour. Reputation? Torched.

Don’t trust WAFs. They choke on this. Runtime fixes or patches only.

Deno Deploy’s auto-mitigation? Enviable. Vercel users, seethe.

Worse, this follows RCE. Pattern emerging. React core team’s stretched thin—Meta’s plate is full with Llama models and AI drama.

Patch. Test. Deploy. Repeat.

But wander with me: Imagine if every framework had runtime mitigations baked in. No more ‘upgrade or die’ panics. Deno’s onto something. Others, copy homework.

The Skeptic’s Take

Deno’s blog reads like victory lap. Fair—they earned it. But ‘future blog post on mitigations’? Tease. Spill details, Deno. Transparency builds trust.

React/Next.js: Solid patches, quick response. But frequency of these bugs screams ‘experimental tech in prod.’ Pump the brakes.

Devs: Audit your stack. Now.

Final jab: If your app’s hanging from one request, was it ever ready for prime time?


🧬 Related Insights

Frequently Asked Questions

What is the React Next.js DoS vulnerability? High-severity CVE-2025-55184 causes infinite loops via crafted requests in React Server Components, hanging servers.

Are Deno Deploy apps safe from this React DoS bug? Yes—automatic runtime mitigations applied December 11, 2025. Still patch libs for full coverage.

How do I patch Next.js for this vulnerability? Upgrade to Next 16.0.9+, 15.5.8+, or 14.2.34+. Deno: deno update next@latest.

Written by
DevTools Feed Editorial Team

Curated insights, explainers, and analysis from the editorial team.

Frequently asked questions

What is the React Next.js DoS vulnerability?
High-severity CVE-2025-55184 causes infinite loops via crafted requests in React Server Components, hanging servers.
Are Deno Deploy apps safe from this React DoS bug?
Yes—automatic runtime mitigations applied December 11, 2025. Still patch libs for full coverage.
How do I patch Next.js for this vulnerability?
Upgrade to Next 16.0.9+, 15.5.8+, or 14.2.34+. Deno: `deno update next@latest`.

Worth sharing?

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

Originally reported by Deno Blog

Stay in the loop

The week's most important stories from DevTools Feed, delivered once a week.