Next.js: Cache confusion of response bodies for requests with bodies
## Impact A server-side `fetch` with a request body may return a cached **response** body from a different request to the same URL but different body. Confidential data in the `POST`'s **response** body would then leak to unauthorized requests. Though the request itself will not be deduped. This only applies to `fetch` calls with a request that has a different init than the one passed to `fetch`. Safe: `fetch(new Request(init), init)` Unsafe: `fetch(new Request(init), aDifferentInit)` ## Workarounds No workaround exists besides upgrading. Applications using Pages Router are not vulnerable.
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2026-64648US | medium5.4 | — | ||
Next.js is a React framework for building full-stack web applications. In versions 12.0.0 through 15.5.20 and 16.0.0 through 16.2.10, a server-side fetch with a request body may r… | ||||
references
External citations — patches, advisories, analysis.
- https://github.com/vercel/next.jsPACKAGE
- https://github.com/vercel/next.js/commit/062f66700b52a5d6bba2c0605d55577ab7ad262cWEB
- https://github.com/vercel/next.js/commit/73b94872bc343d09494b50394d8c08eb9fc8e56aWEB
- https://github.com/vercel/next.js/releases/tag/v15.5.21WEB
- https://github.com/vercel/next.js/releases/tag/v16.2.11WEB
- https://github.com/vercel/next.js/security/advisories/GHSA-68g3-v927-f742WEB
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan