Next has a Denial of Service with Server Components - Incomplete Fix Follow-UpGHSA-5j59-xgg2-r9c4
HIGHGHSA-5j59-xgg2-r9c4 is a high-severity (CVSS 7.5) remote code execution vulnerability in next. A fix is available for next — see the affected versions and patch details below.
Real-World Exposure
How broadly this vulnerability is actually deployed: weekly install volume shows current usage, and reverse-dependency count shows how many other packages break if it stays unpatched.
nextnpmDescription
It was discovered that the fix for CVE-2025-55184 in React Server Components was incomplete and did not fully mitigate denial-of-service conditions across all payload types. As a result, certain crafted inputs could still trigger excessive resource consumption.
This vulnerability affects React versions 19.0.2, 19.1.3, and 19.2.2, as well as frameworks that bundle or depend on these versions, including Next.js 13.x, 14.x, 15.x, and 16.x when using the App Router. The issue is tracked upstream as CVE-2025-67779.
A malicious actor can send a specially crafted HTTP request to a Server Function endpoint that, when deserialized, causes the React Server Components runtime to enter an infinite loop. This can lead to sustained CPU consumption and cause the affected server process to become unresponsive, resulting in a denial-of-service condition in unpatched environments.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 📦npm | next | ≥ 13.3.1-canary.0&&< 14.2.35 | 14.2.35npm install next@14.2.35 |
| 📦npm | next | ≥ 15.0.6&&< 15.0.7 | 15.0.7npm install next@15.0.7 |
| 📦npm | next | ≥ 15.1.10&&< 15.1.11 | 15.1.11npm install next@15.1.11 |
| 📦npm | next | ≥ 15.2.7&&< 15.2.8 | 15.2.8npm install next@15.2.8 |
| 📦npm | next | ≥ 15.3.7&&< 15.3.8 | 15.3.8npm install next@15.3.8 |
| 📦npm | next | ≥ 15.4.9&&< 15.4.10 | 15.4.10npm install next@15.4.10 |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for next, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update next to 14.2.35 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-5j59-xgg2-r9c4 is resolved across your whole dependency graph.
Workarounds
Do not deserialise data from untrusted sources: where the format allows it, restrict deserialisation to an explicit allowlist of expected types, and prefer a data-only format (JSON, Protobuf) over one that can reconstruct arbitrary objects until you can upgrade.
Frequently Asked Questions
Is GHSA-5j59-xgg2-r9c4 in your dependencies?
Find it across npm, including transitive dependencies.