MediumGHSA-ggv3-7p47-pfv8CVE-2026-29057

Next.js: HTTP request smuggling in rewrites

Published 17 Mar 2026 · Updated 10 Sept 2026

Affected packages

nextnpm
Affected
>=16.0.0-beta.0 <16.1.7
Fixed in
16.1.7
Update to the fixed version for your release line, for example:npm install next@16.1.7
nextnpm
Affected
>=9.5.0 <15.5.13
Fixed in
15.5.13
Update to the fixed version for your release line, for example:npm install next@15.5.13

Details

Summary

When Next.js rewrites proxy traffic to an external backend, a crafted DELETE/OPTIONS request using Transfer-Encoding: chunked could trigger request boundary disagreement between the proxy and backend. This could allow request smuggling through rewritten routes.

Impact

An attacker could smuggle a second request to unintended backend routes (for example, internal/admin endpoints), bypassing assumptions that only the configured rewrite destination/path is reachable. This does not impact applications hosted on providers that handle rewrites at the CDN level, such as Vercel.

Patches

The vulnerability originated in an upstream library vendored by Next.js. It is fixed by updating that dependency’s behavior so content-length: 0 is added only when both content-length and transfer-encoding are absent, and transfer-encoding is no longer removed in that code path.

Workarounds

If upgrade is not immediately possible:

  • Block chunked DELETE/OPTIONS requests on rewritten routes at your edge/proxy.
  • Enforce authentication/authorization on backend routes per our security guidance.

Is GHSA-ggv3-7p47-pfv8 in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected next, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.