GitHub Advisoryadvisory · npm
GHSA-4633-3j49-mh5q Next.js: Cache confusion of response bodies for requests with bodies containing invalid UTF-8 byte sequences
MEDIUM
Official page ↗
- Aliases
- CVE-2026-64647
- Ecosystem
- npm
- Packages
- next
- Severity
- Moderate
- CVSS vector
- CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
- Weaknesses
- CWE-116
- Reviewed
- 2026-07-22
Affected packages
• npm next: >= 13.0.0, < 15.5.21 → fixed in 15.5.21
• npm next: >= 16.0.0, < 16.2.11 → fixed in 16.2.11
Description
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 is only an issue when receiving request bodies with a content type charset other than UTF-8. For example, the UTF-16 byte sequences for `삃삃` and `섄섄` in the request body would share the same cache.
Workarounds
If you cannot upgrade, consider only making fetch requests with UTF-8 bodies (default in Next.js). Applications using Pages Router are not vulnerable.
Related
Alias · CVE (1)
- CVE-2026-64647 Next.js is a React framework for building full-stack web applications. vulnerability
Weakness · CWE (1)
- CWE-116 Improper Encoding or Escaping of Output weakness
References
- https://github.com/vercel/next.js/security/advisories/GHSA-4633-3j49-mh5q web
- https://github.com/vercel/next.js/pull/96008 web
- https://github.com/vercel/next.js/commit/025bf4a5f7b47fb7758c4ebf1c931a61c451c082 web
- https://github.com/vercel/next.js package
- https://github.com/vercel/next.js/releases/tag/v15.5.21 web
- https://github.com/vercel/next.js/releases/tag/v16.2.11 web