CVE-2025-49005

Next.js cache poisoning due to omission of Vary header

Published Jul 3, 2025 CVSS 3.1 · 3.7 Low EPSS < 1% KEV · Not listed
Description
Next.js is a React framework for building full-stack web applications. In Next.js App Router from 15.3.0 to before 15.3.3 and Vercel CLI from 41.4.1 to 42.2.0, a cache poisoning vulnerability was found. The issue allowed page requests for HTML content to return a React Server Component (RSC) payload instead under certain conditions. When deployed to Vercel, this would only impact the browser cache, and would not lead to the CDN being poisoned. When self-hosted and deployed externally, this could lead to cache poisoning if the CDN does not properly distinguish between RSC / HTML in the cache keys. This issue has been resolved in Next.js 15.3.3.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
EUVD EUVD EUVD-2025-19911 Next.js has a Cache poisoning vulnerability due to omission of the Vary header
Github GHSA Github GHSA GHSA-r2fc-ccr8-96c4 Next.js has a Cache poisoning vulnerability due to omission of the Vary header
History
Type Values Removed Values Added
First Time appeared Vercel vercel
CPEs cpe:2.3:a:vercel:next.js:*:*:*:*:*:node.js:*:*
cpe:2.3:a:vercel:vercel:*:*:*:*:*:*:*:*
Vendors & Products Vercel vercel
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Next.js is a React framework for building full-stack web applications. In Next.js App Router from 15.3.0 to before 15.3.3 and Vercel CLI from 41.4.1 to 42.2.0, a cache poisoning vulnerability was found. The issue allowed page requests for HTML content to return a React Server Component (RSC) payload instead under certain conditions. When deployed to Vercel, this would only impact the browser cache, and would not lead to the CDN being poisoned. When self-hosted and deployed externally, this could lead to cache poisoning if the CDN does not properly distinguish between RSC / HTML in the cache keys. This issue has been resolved in Next.js 15.3.3.
Title Next.js cache poisoning due to omission of Vary header
Weaknesses CWE-444
References
Metrics cvssV3_1

{'score': 3.7, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Jul 8, 2025, 2:34 PM
Reserved
May 29, 2025, 4:34 PM
Status
Analyzed
Published
Jul 3, 2025, 9:15 PM
Modified
Jun 17, 2026, 9:30 AM
Severity
Low
Public date
Jul 3, 2025, 9:01 PM