Packages / next / Security

ModerateVulnerabilityGHSA-4633-3j49-mh5qCVE-2026-64647Published 22 Jul 2026

Next.js: Cache confusion of response bodies for requests with bodies containing invalid UTF-8 byte sequences

Affected releases · next

  • 16.x16.0.0 – 16.2.10Fixed in 16.2.11
  • 15.x15.0.0 – 15.5.20Fixed in 15.5.21
  • 14.x14.0.0 – 14.2.35No fix on this line yet
  • 13.x13.0.0 – 13.5.11No fix on this line yet

On 16.x, the newest line:

npm install next@16.2.11
16.x
  1. Affected

    16.0.0 – 16.2.10

    31 releases

  2. Fixed

    16.2.11 – 16.4.2

    14 releases, latest

15.x
  1. Affected

    15.0.0 – 15.5.20

    74 releases

  2. Fixed

    15.5.21 – 15.5.28

    8 releases

14.x
  1. Affected

    14.0.0 – 14.2.35

    46 releases

13.x
  1. Affected

    13.0.0 – 13.5.11

    56 releases

423 stable releases of next, oldest to newest, one row per major.

Is your project affected?

Paste your package.json, or type the range you declare for next. It is read in your browser and sent nowhere.

What happens

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.