CVE-2024-46982
Cache Poisoning in next.js
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.5
Cache Poisoning in next.js
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.
- Record
CVE-2024-46982- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-639
- Updated
- 2026-11-02
EUVDEUVD-2024-2803
7.5
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.
- Record
EUVD-2024-2803- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-gp8f-8m3g-qvj9
8.7
Next.js Cache Poisoning
Impact
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:
- Next.js between 13.5.1 and 14.2.9
- Using pages router
- Using non-dynamic server-side rendered routes e.g.
pages/dashboard.tsxnotpages/blog/[slug].tsx
The below configurations are unaffected:
- Deployments using only app router
- Deployments on Vercel are not affected
Patches
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.
Workarounds
There are no official or recommended workarounds for this issue, we recommend that users patch to a safe version.
Credits
- Allam Rachid (zhero_)
- Henry Chen
- Record
GHSA-gp8f-8m3g-qvj9- CVSS 4.0
- 8.7 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-349, CWE-639
- Updated
- 2026-11-02
NVD
7.5
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.
- Record
CVE-2024-46982- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-639
- Updated
- 2026-11-02
OSV
7.5
Cache Poisoning in next.js
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.
- Record
CVE-2024-46982- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-639
- Updated
- 2026-11-02
OSVGHSA-gp8f-8m3g-qvj9
8.7
Next.js Cache Poisoning
Impact
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:
- Next.js between 13.5.1 and 14.2.9
- Using pages router
- Using non-dynamic server-side rendered routes e.g.
pages/dashboard.tsxnotpages/blog/[slug].tsx
The below configurations are unaffected:
- Deployments using only app router
- Deployments on Vercel are not affected
Patches
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.
Workarounds
There are no official or recommended workarounds for this issue, we recommend that users patch to a safe version.
Credits
- Allam Rachid (zhero_)
- Henry Chen
- Record
GHSA-gp8f-8m3g-qvj9- CVSS 4.0
- 8.7 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-349, CWE-639
- Updated
- 2026-11-02
OSVROOT-APP-NPM-CVE-2024-46982 No score
CVE-2024-46982 in next - Patched by Root
Root has patched CVE-2024-46982 in the next package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-CVE-2024-46982- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
nextnpm |
13.5.1 up to 13.5.7 | 13.5.7 |
nextnpm |
14.0.0 up to 14.2.10 | 14.2.10 |
nextRoot:npm |
before 14.2.5-aikido.5 | 14.2.5-aikido.514.2.5-aikido.814.0.4-aikido.614.0.4-aikido.914.1.3-aikido.214.1.0-aikido.414.0.4-aikido.514.0.4-aikido.714.0.4-aikido.214.1.0-aikido.714.1.0-aikido.814.0.4-aikido.314.2.3-aikido.514.2.0-aikido.214.0.3-aikido.314.2.5-aikido.914.2.5-aikido.1014.2.2-aikido.714.1.3-aikido.514.0.0-aikido.714.1.4-aikido.514.2.0-aikido.614.0.4-aikido.414.2.0-aikido.514.2.2-aikido.914.0.3-aikido.614.0.0-aikido.514.2.5-aikido.214.2.5-aikido.314.2.3-aikido.313.5.4-aikido.514.1.3-aikido.614.2.5-aikido.414.0.3-aikido.414.2.5-aikido.614.0.0-aikido.314.1.4-aikido.713.5.4-aikido.213.5.6-aikido.214.0.3-aikido.514.1.4-aikido.813.5.4-aikido.614.1.3-aikido.714.0.0-aikido.614.2.5-aikido.714.2.3-aikido.414.2.2-aikido.814.2.3-aikido.213.5.6-aikido.313.5.6-aikido.414.1.4-aikido.914.1.3-aikido.113.5.6-aikido.514.1.3-aikido.813.5.6-aikido.614.0.4-aikido.814.1.4-aikido.614.1.0-aikido.514.0.0-aikido.414.1.0-aikido.313.5.4-aikido.314.2.0-aikido.314.2.0-aikido.113.5.4-aikido.414.1.3-aikido.314.0.3-aikido.214.1.3-aikido.414.2.0-aikido.414.1.0-aikido.613.5.6-aikido.714.2.10-aikido.314.2.10-aikido.114.2.10-aikido.414.2.10-aikido.2 |
@rootio/nextRoot:npm |
before 14.2.5-root.io.5 | 14.2.5-root.io.514.2.5-root.io.814.0.4-root.io.614.0.4-root.io.914.1.3-root.io.214.1.0-root.io.414.0.4-root.io.514.0.4-root.io.714.0.4-root.io.214.1.0-root.io.714.1.0-root.io.814.0.4-root.io.314.2.3-root.io.514.2.0-root.io.214.0.3-root.io.314.2.5-root.io.914.2.5-root.io.1014.2.2-root.io.714.1.3-root.io.514.0.0-root.io.714.1.4-root.io.514.2.0-root.io.614.0.4-root.io.414.2.0-root.io.514.2.2-root.io.914.0.3-root.io.614.0.0-root.io.514.2.5-root.io.214.2.5-root.io.314.2.3-root.io.313.5.4-root.io.514.1.3-root.io.614.2.5-root.io.414.0.3-root.io.414.2.5-root.io.614.0.0-root.io.314.1.4-root.io.713.5.4-root.io.213.5.6-root.io.214.0.3-root.io.514.1.4-root.io.813.5.4-root.io.614.1.3-root.io.714.0.0-root.io.614.2.5-root.io.714.2.3-root.io.414.2.2-root.io.814.2.3-root.io.213.5.6-root.io.313.5.6-root.io.414.1.4-root.io.914.1.3-root.io.113.5.6-root.io.514.1.3-root.io.813.5.6-root.io.614.0.4-root.io.814.1.4-root.io.614.1.0-root.io.514.0.0-root.io.414.1.0-root.io.313.5.4-root.io.314.2.0-root.io.314.2.0-root.io.113.5.4-root.io.414.1.3-root.io.314.0.3-root.io.214.1.3-root.io.414.2.0-root.io.414.1.0-root.io.613.5.6-root.io.714.2.10-root.io.314.2.10-root.io.114.2.10-root.io.414.2.10-root.io.2 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | CodePontiff/next_js_poisoning | 2024-12-14 |
| PoC in GitHub | Lercas/CVE-2024-46982 | 2025-01-23 |
| PoC in GitHub | hidesec/CVE-2025-32421 | 2025-10-11 |
| PoC in GitHub | melmathari/CVE-2024-46982-NUCLEI | 2025-09-21 |
| PoC in GitHub | samuel871211/CVE-2024-46982-Reproduction | 2026-01-17 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2024-46982 is a high vulnerability (CVSS 7.5) in Vercel Next.js, published September 17, 2024. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 59.2%, the 99th percentile. Fixed in next 13.5.7.
References
github.com/vercel/next.js/security/advisories/GHSA-gp8f-8m3g-qvj9
github.com/vercel/next.js/commit/7ed7f125e07ef0517a331009ed7e32691ba403d3
github.com/vercel/next.js/commit/bd164d53af259c05f1ab434004bcfdd3837d7cda
nvd.nist.gov/vuln/detail/CVE-2024-46982
github.com/advisories/GHSA-gp8f-8m3g-qvj9
github.com/CVEProject/cvelistV5/tree/main/cves/2024/46xxx/CVE-2024-46982.json
github.com/vercel/next.js