Skip to main content

Next.js EUVDEUVD-2026-91667

| CVE-2026-94486 LOW
Origin Validation Error (CWE-346)
2026-10-02 GitHub_M GHSA-39w2-rjm5-chcv
2.3
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Lure developer to malicious site while dev server runs
  2. Delivery
    Page sends cross-site request to /_next/mcp
  3. Exploit
    Weak origin validation accepts request
  4. Execution
    Read disk path, source snippets, routes, logs
  5. Impact
    Exfiltrate development data to attacker

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Origin validation
Exploitation Conditions

Exploitation requires that the victim be actively running the Next.js next dev development server on an affected version (16.0.0 through 16.3.7) AND that the developer visit an attacker-controlled website in a browser during that session. The malicious site must reach the development MCP endpoint (/_next/mcp), which performs unreliable cross-site origin validation (CWE-346). Strong limiting factors: production/built deployments never serve this endpoint, so only developer machines during active local development are exposed; the attack depends on victim-side browsing (UI:P) to a malicious page; and impact is read-only disclosure of development metadata (disk path, error-report source snippets, route inventory, dev logs) rather than code execution or data modification.

Impact

This is a genuinely low-priority issue that the signals agree on, not a high-CVSS-but-low-risk mismatch. The vendor-assigned CVSS 4.0 base score is 2.3 (Low), and the vector (AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N) is internally consistent with the description: network-reachable but gated by an attack requirement (AT:P - the victim must be actively running the next dev server) and passive user interaction (UI:P - the developer must visit a malicious website). Impact is confined to low-grade information disclosure. No EPSS score was supplied, and there is no CISA KEV listing and no public proof-of-concept in the provided data, so exploitation status is: no public exploit identified at time of analysis. The most important risk-limiting fact - confirmed by the description and corroborated by the patch commit touching dev-only MCP and cross-site-dev middleware - is that production deployments do not serve the vulnerable endpoint, so blast radius is limited to developer workstations during active local development. No key signals are conflicting; the only gap is the absence of EPSS/exploit telemetry, which for a dev-server-only Low-severity issue does not materially change prioritization. Treat as routine patch-management, not an emergency.

Exploit ScenarioDerived

A developer is running the Next.js next dev server locally (versions 16.0.0-16.3.7) and, in the same browser session, visits an attacker-controlled web page. Because the development Model Context Protocol endpoint does not reliably block cross-site requests, the malicious page issues requests to the local dev server and exfiltrates the project's on-disk path, source-code snippets surfaced in error reports, the route inventory, and development logs. No public exploit code is identified at time of analysis, and the attack cannot reach production deployments.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 02, 2026

Cross-site request validation weakness in the Next.js next dev development server (versions 16.0.0 through 16.3.7) allows a malicious website, when visited by a developer who is simultaneously running the dev server, to reach the Model Context Protocol endpoint at /_next/mcp and read development-only metadata: the project's disk location, source-code snippets embedded in error reports, the application's route inventory, and development logs. The CVSS 4.0 score is only 2.3 (assessed as CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N by our review) because exploitation requires the victim to actively run the affected dev server and browse to an attacker-controlled page during that session, and because the impact is limited to read-only disclosure with no code execution or data modification. Production and built deployments do not serve this endpoint at all, so only developer workstations during active local development are exposed; no public exploit code was identified at time of analysis and the issue is not known to be actively exploited. A vendor-released patch is available in Next.js 16.3.8.

RemediationAI

Vendor-released patch: upgrade Next.js to 16.3.8 or later (release notes at https://github.com/vercel/next.js/releases/tag/v16.3.8), which replaces the loose substring/URL path checks with canonical parsePath plus a strict trailing-slash-stripped equality match on /_next/mcp; advisory details are at https://github.com/vercel/next.js/security/advisories/GHSA-39w2-rjm5-chcv. Because only the development server is affected, the primary compensating control is simply to stop the next dev process when it is not in active use, and to avoid browsing untrusted or attacker-reachable websites in the same browser profile while it runs - a trade-off of convenience only, since no build or runtime functionality depends on the endpoint. Where dev servers must stay up, keep them bound to loopback only (avoid next dev --hostname 0.0.0.0 or any LAN/remote exposure, since that widens both the cross-site and any direct-access surface) and, if the project is fronted by a local reverse proxy or tunnel, explicitly block requests to /_next/mcp from non-local origins or strip cross-site Referer/Origin-bearing requests - noting that doing so can break editor/agent MCP integrations that legitimately use the endpoint. Production deployments require no action for this CVE, as the endpoint is not present there. No public exploit code was identified at time of analysis, so patching can be prioritized as routine hygiene within the affected developer toolchain rather than as an emergency.

Affected VersionsENISA

next.js 16.0.0, < 16.3.8

Affected Packages

npm next fix: 16.3.8
euvd next_js_16_0_0 fix: 16.3.8

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 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 a React framework from Vercel for building full-stack web applications, and its development mode (next dev) exposes a suite of internal HTTP endpoints under the /_next prefix, including a Model Context Protocol (MCP) server endpoint at /_next/mcp that provides tooling metadata to editor/agent integrations. Root cause is CWE-346 (Origin Validation Error): the dev server's cross-site request guard in packages/next/src/server/lib/router-utils/block-cross-site-dev.ts derived its path checks from the raw req.url string via loose includes() substring matching and the MCP middleware in packages/next/src/server/mcp/get-mcp-middleware.ts parsed the request path with new URL(req.url || '', 'http://n') and a startsWith('/_next/mcp') test. Because origin/host validation was not reliably enforced on this path and path parsing was ambiguous (e.g. crafted prefixes or trailing-slash variants could satisfy or evade the substring checks), a cross-site request from a browser context could satisfy the guard. The upstream fix (commit 2d9f50a409312696145b82b3157aadb6b1fef476) switches both modules to the canonical parsePath helper - and adds removeTrailingSlash so the MCP handler matches the path with a strict equality test (removeTrailingSlash(pathname) !== '/_next/mcp') - eliminating the substring-matching and URL-parsing discrepancies. The endpoint exists only in the development server; the production/build server does not register it, which bounds the exposure to developer machines.

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 2.3 LOW
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Network-reachable via the browser but requires the developer to visit a malicious site (UI:R) while running the dev server; read-only disclosure means C:L with no integrity or availability impact.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
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:12 cve.org
LOW 2.3

DescriptionCVE.org

Next.js is a React framework for building full-stack web applications. From 16.0.0 until 16.3.8, the next dev development server exposes a Model Context Protocol endpoint without reliably restricting cross-site requests. A malicious website visited by a developer can reach the endpoint and read the project's disk location, source code snippets from error reports, route inventory, and development logs. Production deployments do not serve this endpoint. This issue is fixed in version 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.2%
Top 94% exploitable
Prevalence
High
Next.js is among the most widely deployed React frameworks
Threat Intel
1
1 source
Data Quality
7 sources
Confidence: High
EUVD 🇯🇵JVN NVD CVE.org EPSS Vulnrichment GHSA 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 LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

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

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