Next.js: Unbounded postponed resume buffering can lead to DoS
GHSA-h27x-g6w4-24gq · CVE-2026-27979
Published · Modified
Description
Summary
A request containing the next-resume: 1 header (corresponding with a PPR resume request) would buffer request bodies without consistently enforcing maxPostponedStateSize in certain setups. The previous mitigation protected minimal-mode deployments, but equivalent non-minimal deployments remained vulnerable to the same unbounded postponed resume-body buffering behavior.
Impact
In applications using the App Router with Partial Prerendering capability enabled (via experimental.ppr or cacheComponents), an attacker could send oversized next-resume POST payloads that were buffered without consistent size enforcement in non-minimal deployments, causing excessive memory usage and potential denial of service.
Patches
Fixed by enforcing size limits across all postponed-body buffering paths and erroring when limits are exceeded.
Workarounds
If upgrade is not immediately possible:
- Block requests containing the
next-resumeheader, as this is never valid to be sent from an untrusted client.
References
- WEB https://github.com/vercel/next.js/security/advisories/GHSA-h27x-g6w4-24gq
- ADVISORY https://nvd.nist.gov/vuln/detail/CVE-2026-27979
- WEB https://github.com/vercel/next.js/commit/c885d4825f800dd1e49ead37274dcd08cdd6f3f1
- PACKAGE https://github.com/vercel/next.js
- WEB https://github.com/vercel/next.js/releases/tag/v16.1.7
Ready to move
Start Securing
Free, no credit card | First findings in minutes