{"id":"CVE-2025-49005","aliases":["EUVD-2025-19911","GHSA-r2fc-ccr8-96c4"],"status":"published","title":"Next.js cache poisoning due to omission of Vary header","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.","severity":{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"low","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00491,"percentile":0.42468,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-444"],"published":"2025-07-03T20:30:18Z","modified":"2026-10-28T02:31:09Z","fixes":[{"ecosystem":"npm","package":"next","fixed_in":["15.3.3"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"next","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"15.3.0"},{"fixed":"15.3.3"}]}]},{"source":"osv","ecosystem":"npm","package":"next","ranges":[{"type":"SEMVER","events":[{"introduced":"15.3.0"},{"fixed":"15.3.3"}]}]}],"products":[{"vendor":"vercel","product":"next.js"},{"vendor":"vercel","product":"vercel"}],"references":[{"url":"https://github.com/vercel/next.js/security/advisories/GHSA-r2fc-ccr8-96c4","tags":["x_refsource_CONFIRM","Vendor Advisory","advisory","web"]},{"url":"https://github.com/vercel/next.js/issues/79346","tags":["x_refsource_MISC","exploit","Exploit","Issue Tracking","report","web"]},{"url":"https://github.com/vercel/next.js/commit/ec202eccf05820b60c6126d6411fe16766ecc066","tags":["x_refsource_MISC","Patch","fix","web"]},{"url":"https://github.com/vercel/next.js/releases/tag/v15.3.3","tags":["x_refsource_MISC","Release Notes","web"]},{"url":"https://vercel.com/changelog/cve-2025-49005","tags":["x_refsource_MISC","Vendor Advisory","web"]},{"url":"https://github.com/vercel/next.js/pull/79939","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-49005","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-r2fc-ccr8-96c4"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/49xxx/CVE-2025-49005.json","tags":["advisory"]},{"url":"https://github.com/vercel/next.js","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2025-49005","title":"Next.js cache poisoning due to omission of Vary header","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.","status":"published","published":"2025-07-03T21:01:14.743Z","modified":"2025-07-08T14:34:12.642Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"low","assessor":"cna"}],"cwes":["CWE-444"],"updated_at":"2026-11-02T14:32:24.825718Z"}],"euvd":[{"id":"EUVD-2025-19911","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.","status":"published","published":"2025-07-03T21:01:14Z","modified":"2025-07-08T14:34:12Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"low"}],"updated_at":"2026-11-02T20:32:12.59227Z"}],"ghsa":[{"id":"GHSA-r2fc-ccr8-96c4","title":"Next.js has a Cache poisoning vulnerability due to omission of the Vary header","description":"### Summary\n\nA cache poisoning issue in **Next.js App Router \u003e=15.3.0 and \u003c 15.3.3** may have allowed RSC payloads to be cached and served in place of HTML, under specific conditions involving middleware and redirects. This issue has been fixed in **Next.js 15.3.3**.\n\nUsers on affected versions should **upgrade immediately** and **redeploy** to ensure proper caching behavior.\n\nMore details: [CVE-2025-49005](https://vercel.com/changelog/cve-2025-49005)","status":"published","published":"2025-07-03T20:30:18Z","modified":"2025-07-03T21:49:02Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"low"}],"cwes":["CWE-444"],"updated_at":"2026-11-02T14:38:48.783737Z"}],"nvd":[{"id":"CVE-2025-49005","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.","status":"published","published":"2025-07-03T21:15:26.787Z","modified":"2026-06-17T09:30:39.437Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"low","assessor":"secondary"}],"cwes":["CWE-444"],"updated_at":"2026-11-02T14:11:15.754475Z"}],"osv":[{"id":"CVE-2025-49005","title":"Next.js cache poisoning due to omission of Vary header","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.","status":"published","published":"2025-07-03T21:01:14.743Z","modified":"2026-10-28T02:31:09.928212265Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"low"}],"cwes":["CWE-444"],"updated_at":"2026-11-02T15:44:50.037003Z"},{"id":"GHSA-r2fc-ccr8-96c4","title":"Next.js has a Cache poisoning vulnerability due to omission of the Vary header","description":"### Summary\n\nA cache poisoning issue in **Next.js App Router \u003e=15.3.0 and \u003c 15.3.3** may have allowed RSC payloads to be cached and served in place of HTML, under specific conditions involving middleware and redirects. This issue has been fixed in **Next.js 15.3.3**.\n\nUsers on affected versions should **upgrade immediately** and **redeploy** to ensure proper caching behavior.\n\nMore details: [CVE-2025-49005](https://vercel.com/changelog/cve-2025-49005)","status":"published","published":"2025-07-03T20:30:18Z","modified":"2026-09-10T03:50:26.244210069Z","cvss":[{"version":"3.1","score":3.7,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"low"}],"cwes":["CWE-444"],"updated_at":"2026-11-02T15:46:55.122811Z"}]}}
