CVE-2026-103004
CVE-2026-103004 is a medium-severity vulnerability in Vercel Next.js with a CVSS 3.x base score of 5.3. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-524.
Key facts
- Severity: Medium (CVSS 3.x base score 5.3)
- CVSS v4: 6.3
- EPSS exploit prediction: 0% (15th percentile)
- Actively exploited: Not listed in CISA KEV
- Weakness: CWE-524
- Affected product: Vercel Next.js
- Published:
- Last modified:
Description
Next.js versions from 16.3.0 to 16.3.7 warm `use cache` handlers using `next/root-params` and can leak their return value to pages with different root params. With Cache Components enabled (cacheComponents: true), a 'use cache' function that calls another 'use cache' function that reads a root param can be keyed incorrectly when the inner call is served from an existing entry: the enclosing function's cache key then omits that root param. The enclosing entry is written once and reused for all root param values, so a response for one root param value can serve content produced for a different value — whether the page is prerendered at build time or at runtime, or rendered dynamically. Shared cache headers let downstream caches redistribute the content further. What values are leaked cannot be attacker controlled. Which value's content is served depends only on which invocation wrote the entry first. This has been patched in 16.3.8.
Frequently asked questions
- What is CVE-2026-103004?
- Next.js versions from 16.3.0 to 16.3.7 warm `use cache` handlers using `next/root-params` and can leak their return value to pages with different root params. With Cache Components enabled (cacheComponents: true), a 'use cache' function that calls another 'use cache' function that reads a root param can be keyed incorrectly when the inner call is served from an existing entry: the enclosing function's cache key then omits that root param. The enclosing entry is written once and reused for all root param values, so a response for one root param value can serve content produced for a different value — whether the page is prerendered at build time or at runtime, or rendered dynamically. Shared cache headers let downstream caches redistribute the content further. What values are leaked cannot be attacker controlled. Which value's content is served depends only on which invocation wrote the entry first. This has been patched in 16.3.8.
- How severe is CVE-2026-103004?
- CVE-2026-103004 has a CVSS 3.x base score of 5.3, rated medium severity. It is exploitable over network with low attack complexity, requires no privileges and no user interaction. Impact on confidentiality is low, integrity none, and availability none.
- Is CVE-2026-103004 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (15th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-103004?
- CVE-2026-103004 affects Vercel Next.js. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-103004?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround.
- When was CVE-2026-103004 published?
- CVE-2026-103004 was published on 2026-10-01 and last updated on 2026-10-05.
References
- https://github.com/vercel/next.js/releases/tag/v16.3.8
- https://github.com/vercel/next.js/security/advisories/GHSA-h694-7cp9-m8p3
Affected products (1)
- cpe:2.3:a:vercel:next.js:*:*:*:*:*:node.js:*:*
More vulnerabilities in Vercel Next.js
- CVE-2025-55182 — Critical (CVSS 10.0): A pre-authentication remote code execution vulnerability exists in React Server Components versions 19.0.0, 19.1.0,…
- CVE-2025-29927 — Critical (CVSS 9.1): Next.js is a React framework for building full-stack web applications. Starting in version 1.11.4 and prior to versions…
- CVE-2026-44578 — High (CVSS 8.6): Next.js is a React framework for building full-stack web applications. From 13.4.13 to before 15.5.16 and 16.2.5,…
- CVE-2026-64642 — High (CVSS 8.2): Next.js is a React framework for building full-stack web applications. In versions 16.0.0 through 16.2.10, crafted…
- CVE-2026-44574 — High (CVSS 8.1): Next.js is a React framework for building full-stack web applications. From 15.4.0 to before 15.5.16 and 16.2.5,…
- CVE-2026-64641 — High (CVSS 7.5): Next.js is a React framework for building full-stack web applications. In versions 13.0.0 through 15.5.20 and 16.0.0…
All CVEs affecting Vercel Next.js →
Other CWE-524 vulnerabilities
- CVE-2026-53943 — Critical (CVSS 9.6): Ghost is a Node.js content management system. From until 6.37.0, when Ghost is behind a shared caching layer that…
- CVE-2026-19202 — Critical (CVSS 9.1): A caching flaw in the toolbox-core package of the mcp-toolbox-sdk-python SDK causes the same Google ID token to be…
- CVE-2025-64762 — Critical (CVSS 9.1): The AuthKit library for Next.js provides convenient helpers for authentication and session management using WorkOS &…
- CVE-2026-61836 — High (CVSS 8.6): Directus is a real-time API and App dashboard for managing SQL database content. Prior to 12.0.0, when response caching…
- CVE-2026-93748 — High (CVSS 7.5): http-cache-semantics through 4.2.0 fails to properly validate security-zeroed cache entries when processing client…
- CVE-2026-71316 — High (CVSS 7.5): Nuxt is an open-source web development framework for Vue.js. From 4.4.0 until 4.5.1, runtime cache:nuxt:payload entries…