Skip to main content

Next.js CVE-2026-94484

| EUVDEUVD-2026-91674 MEDIUM
Use of Cache Containing Sensitive Information (CWE-524)
2026-10-02 GitHub_M GHSA-mcj8-r9mp-w47p
6.3
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify Next.js app with root catch-all + ISR/SSG
  2. Delivery
    Send crafted unauthenticated request
  3. Exploit
    Collide on insufficiently scoped response cache key
  4. Execution
    Poison shared cache entry
  5. Impact
    Serve wrong content or persistent DoS to other users

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V3 - Web Frontend Security Cache-Control for sensitive pages
Exploitation Conditions

Exploitation requires the target application to have BOTH a root-level catch-all page (e.g. a top-level [[...slug]] route) AND statically generated or Incremental Static Regeneration (ISR) routes, running an affected version (15.0.0-15.5.26 or 16.x before 16.3.8). Under that topology, a single unauthenticated crafted request can poison a shared response cache key. Limiting factors: the flaw does NOT affect default apps lacking the root catch-all + SSG/ISR combination; exploitation is gated by high attack complexity (AC:H) and an attack requirement (AT:P) because the attacker must craft a request that collides on the under-scoped cache key for a given source route. No authentication and no user interaction are required (PR:N/UI:N confirmed by CVSS vector).

Impact

This is a genuine but moderate-priority issue, not a drop-everything emergency. The vendor CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N) describes a network-reachable, unauthenticated flaw but explicitly flags high attack complexity (AC:H) and a present attack requirement (AT:P), reflecting that exploitation is gated by a specific application topology (root-level catch-all page plus SSG/ISR routes) rather than being broadly sprayable. No EPSS score, no CISA KEV listing, and no public POC were provided, so there is no public exploit identified at time of analysis and no evidence of active exploitation - the 6.3 'Medium' rating is consistent with a real-but-conditional risk. One signal conflict worth flagging: the vendor vector scores only availability (VA:L) with VC:N/VI:N, yet the description explicitly states 'cross-user content substitution,' which is an integrity impact that the published vector does not capture - verify impact scope with the Vercel advisory (GHSA-mcj8-r9mp-w47p). Net: prioritize patching for internet-facing Next.js apps that match the vulnerable topology, but this is not a wormable, mass-exploitable bug.

Exploit ScenarioDerived

An attacker targets a public Next.js site (15.0.0-15.5.26 or a 16.x build before 16.3.8) that uses a root-level catch-all page with statically generated or ISR routes. They send a single crafted, unauthenticated HTTP request that writes into a response cache key that is insufficiently scoped to the source route, poisoning the shared entry so subsequent legitimate visitors are served substituted content or a broken response. No POC is provided, and high attack complexity (AC:H) means the attacker must understand the app's routing/caching layout to land the collision.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 02, 2026

Next.js versions 15.0.0 through 15.5.26 and 16.0.0 through 16.3.7 can be coerced into poisoning a shared response cache entry, allowing cross-user content substitution or a persistent denial of service until the poisoned entry is revalidated. The flaw only manifests in applications that combine a root-level catch-all page (for example a top-level [[...slug]] route) with statically generated or Incremental Static Regeneration routes, where the response cache key is not scoped tightly enough to the source route; a single unauthenticated crafted request can collide on that key. Exploitation is real but narrow and gated by high attack complexity and an attack prerequisite (CVSS:3.1/AV:N/AC:H/PR:N/UI:N), so this is assessed as a genuine but moderate-priority issue rather than an emergency; no public exploit code or confirmed active exploitation has been identified at time of analysis. An independent assessment rates impact as low integrity and low availability with scope change (S:C/I:L/A:L), and the supplier CVSS 4.0 vector scores 6.3.

RemediationAI

Vendor-released patch: upgrade to Next.js 15.5.27 or 16.3.8, which hash the source route into the cache key and migrate historical prerender seeds into the scoped server/route-cache namespace (see https://github.com/vercel/next.js/releases/tag/v15.5.27, https://github.com/vercel/next.js/releases/tag/v16.3.8, and GHSA-mcj8-r9mp-w47p). Any external or custom incremental cache handler (incrementalCacheHandlerPath) and any integration that reads cached responses ahead of Next.js must be updated at the same time to pass the opaque scoped key through unchanged and to preserve source-route ownership - trimming the route namespace or falling back to pathname-only keys re-introduces the flaw, and purging stale entries from the old namespace is advisable after upgrade. If upgrading is not immediately possible, the affected combination can be broken: force the root-level catch-all route to dynamic rendering (or disable ISR/static generation for it) so no reusable entry is produced, at the cost of higher origin load and latency for that route; alternatively avoid or restructure the root-level catch-all page so it is not co-resident with statically generated or ISR routes. Note that these are topology-level mitigations and do not fix the under-scoped key itself, so they must be verified against the specific route map of each deployment, and no vendor-released isolated workaround substitutes for the patched version.

Affected VersionsENISA

next.js 16.0.0, < 16.3.8
next.js 15.0.0, < 15.5.27

Affected Packages

npm next fix: 15.5.27, 16.3.8
euvd next_js_15_0_0 fix: 15.5.27
euvd next_js_16_0_0 fix: 16.3.8

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 3 packages in npm, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Next.js is Vercel's React framework for full-stack web applications, and the vulnerability sits in its Incremental Static Regeneration (ISR) and prerender/response cache subsystem, exercised through the configurable incremental cache handler (next.config.js incrementalCacheHandlerPath). The defect class is CWE-524 (Use of Cache Containing Sensitive Information) manifesting as cache-key confusion: prior to the fix, a root-level catch-all page and statically generated or ISR routes could resolve to a shared, insufficiently scoped response cache key, so a response generated for one source route could be written into an entry that is later served for a different route or user. The upstream fix (commits 52c94abdd2ea5f416f5e8353ea8a2edd3fe311b8 and 719e4c67d6e92df60246f95e1d96e2dd60789a52) makes cache keys opaque by composing the response kind with a SHA-256 hash of the source route, e.g. a Pages Router response for a route generated by /blog/[slug] becomes /route-cache/PAGES/<64-char-hex-sha256-of-source>/$/blog/post; Pages Router keys use the canonical route pathname and App Router keys use the full page module name including route groups and parallel slots. The patch also reconciles parallel routes that share a runtime owner, migrates historical server/pages and server/app prerender seeds to scoped server/route-cache keys while verifying their metadata, and warns that external caches and pre-Next.js integrations must preserve the opaque scoped key and source-route ownership rather than falling back to pathname-only lookups. Affected package: cpe:2.3:a:vercel:next.js.

Know when Next Js gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 6.3 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
vuln.today AI 5.4 MEDIUM

Unauthenticated network cache poisoning (PR:N/AV:N) but gated by specific routing topology (AC:H); it affects other users via the shared cache (S:C) with content substitution (I:L) and DoS (A:L).

3.1 AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:L/A:L
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
Red Hat 6.5 MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 02, 2026 - 16:02 EUVD
CVE Published
Oct 02, 2026 - 15:26 cve.org
MEDIUM 6.3

DescriptionCVE.org

Next.js is a React framework for building full-stack web applications. From 15.0.0 until 15.5.27 and 16.3.8, applications with a root-level catch-all page and statically generated or Incremental Static Regeneration routes can use a shared response cache key that is insufficiently scoped to the source route. A single unauthenticated crafted request can poison that cache, causing cross-user content substitution or persistent denial of service until the poisoned entry is revalidated or replaced. This issue is fixed in versions 15.5.27 and 16.3.8.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 27 npm packages depend on next (25 direct, 2 indirect)

Ecosystem-wide dependent count for version 16.0.0.

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Prevalence
High
Next.js is one of the most widely deployed React web frameworks
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High
EUVD 🇯🇵JVN NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2025-55182 CRITICAL POC
10.0 Dec 03

React Server Components in React 19.x contain a critical pre-authentication remote code execution vulnerability (CVE-202

CVE-2017-16877 HIGH POC
7.5 Nov 17

ZEIT Next.js before 2.4.1 has directory traversal under the /_next and /static request namespace, allowing attackers to

CVE-2025-55184 HIGH POC
7.5 Dec 11

Pre-authentication denial of service in React Server Components (versions 19.0.0 through 19.2.1) allows unauthenticated

CVE-2025-55183 MEDIUM POC
5.3 Dec 11

Information disclosure in React Server Components 19.x, distributed as react-server-dom-webpack, react-server-dom-turbop

CVE-2026-75604 CRITICAL POC
9.0 Sep 01

Path traversal in Next.js (13.4.0 through 15.5.23 and 16.x before 16.3.3) running on Windows-hosted servers lets a remot

CVE-2025-57822 HIGH POC
8.2 Aug 29

Server-side request forgery in Vercel Next.js affects self-hosted deployments whose custom middleware calls next()/NextR

CVE-2024-34351 HIGH POC
7.5 May 14

Next.js is a React framework that can provide building blocks to create web applications. Rated high severity (CVSS 7.5)

CVE-2023-46298 HIGH POC
7.5 Oct 22

Next.js before 13.4.20-canary.13 lacks a cache-control header and thus empty prefetch responses may sometimes be cached

CVE-2018-6184 HIGH POC
7.5 Jan 24

ZEIT Next.js 4 before 4.2.3 has Directory Traversal under the /_next request namespace. Rated high severity (CVSS 7.5),

CVE-2025-67779 HIGH
7.5 Dec 12

Unsafe deserialization in React Server Components Server Function endpoints allows remote unauthenticated attackers to t

CVE-2026-94483 HIGH
8.3 Oct 02

Server-side request forgery in the Next.js Image Optimization endpoint lets a remote, unauthenticated attacker cause the

CVE-2020-5284 MEDIUM POC
4.3 Mar 30

Next.js versions before 9.3.2 have a directory traversal vulnerability. Rated medium severity (CVSS 4.3), this vulnerabi

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy