CVE-2026-29057

MEDIUM

Next.js: HTTP request smuggling in rewrites

Title source: cna
STIX 2.1

Description

Next.js is a React framework for building full-stack web applications. Starting in version 9.5.0 and prior to versions 15.5.13 and 16.1.7, 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. 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. The vulnerability originated in an upstream library vendored by Next.js. It is fixed in Next.js 15.5.13 and 16.1.7 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. If upgrading is not immediately possible, block chunked `DELETE`/`OPTIONS` requests on rewritten routes at the edge/proxy, and/or enforce authentication/authorization on backend routes.

Exploits (1)

github WORKING POC
by Nayekah · javascriptpoc
https://github.com/Nayekah/Next.js-Proof-of-Concept

Scores

CVSS v3 6.5
EPSS 0.0003
EPSS Percentile 9.0%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N

CISA SSVC

Vulnrichment
Exploitation none
Automatable yes
Technical Impact partial

Details

CWE
CWE-444
Status published
Products (4)
npm/next 16.0.0-beta.0 - 16.1.7npm
vercel/next.js 9.5.0 - 15.5.13
vercel/next.js >= 16.0.0-beta.0, < 16.1.7
vercel/next.js >= 9.5.0, < 15.5.13
Published Mar 18, 2026
Tracked Since Mar 18, 2026