GitHub Advisoryadvisory · npm

GHSA-ggv3-7p47-pfv8 Next.js: HTTP request smuggling in rewrites

MEDIUM Published 2026-03-17 Modified 2026-03-18 Official page ↗
Aliases
CVE-2026-29057
Ecosystem
npm
Packages
next
Severity
Moderate
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
Weaknesses
CWE-444
Reviewed
2026-03-17

Affected packages

• npm next: >= 16.0.0-beta.0, < 16.1.7 → fixed in 16.1.7 • npm next: >= 9.5.0, < 15.5.13 → fixed in 15.5.13

Description

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.

Related

Alias · CVE (1)

  • CVE-2026-29057 Next.js is a React framework for building full-stack web applications. vulnerability

Weakness · CWE (1)

  • CWE-444 Inconsistent Interpretation of HTTP Requests weakness

References