Skip to main content

Nuxt EUVDEUVD-2026-38375

| CVE-2026-56326 MEDIUM
URL Redirection to Untrusted Site (Open Redirect) (CWE-601)
2026-06-22 VulnCheck
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Recon
    Craft link with path-normalized redirect parameter
  2. Delivery
    Deliver link to victim via phishing
  3. Exploit
    Victim authenticates to Nuxt app
  4. Install
    SSR navigateTo normalizes path to //evil.com
  5. C2
    Server issues Location: //evil.com header
  6. Execute
    Victim browser follows cross-origin redirect
  7. Impact
    Attacker captures session or OAuth authorization code

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Redirect URL validation
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the target Nuxt application to forward user-controlled input - such as a query parameter like ?next=, ?redirect=, or ?return_to= - directly into the navigateTo function during server-side rendering without independent path sanitization. The vulnerability is exclusively triggered in the SSR execution path where navigateTo writes to the HTTP Location header or <meta http-equiv='refresh'> body; purely client-side navigation invocations are not affected by this specific weakness. No authentication is required from the attacker (confirmed by PR:N in the CVSS 4.0 vector), but exploitation requires a victim to follow a crafted link (UI:P). Applications that only pass hardcoded paths to navigateTo, or that apply their own origin-validated allowlist before calling the function, are not exposed. Applications that call navigateTo with external: true explicitly set are not directly protected by that flag, as the check is what was bypassed. The GHSA advisory also notes two related but distinct weaknesses (XSS via the open option and a reloadNuxtApp bypass) that have separate exploitation conditions and are not described by this CVE.

Impact

The CVSS 4.0 score of 5.3 with vector AV:N/AC:L/AT:N/PR:N/UI:P reflects a medium-severity, network-exploitable issue requiring passive user interaction (a victim must follow a crafted link), with limited confidentiality and integrity impacts (VC:L/VI:L). The UI:P requirement moderates the raw risk: mass exploitation is constrained by the need for victim interaction, ruling out automated scanning campaigns. No EPSS score was provided in the input, so exploitation probability cannot be quantified numerically. The vulnerability is not in CISA KEV and no public exploit code has been identified, though exploitation requires only a crafted URL and no specialized tooling. The real-world risk is substantially elevated for any Nuxt application that forwards user-controlled redirect parameters (e.g., ?next=, ?redirect=) into navigateTo on the server - a pattern the framework's own documentation normalizes. The OAuth authorization-code theft scenario is the highest-impact outcome: a victim who clicks a login link to a Nuxt application and completes authentication could have their authorization code silently redirected to an attacker's server, resulting in account takeover with no further interaction. The subsequent-system impacts (SC:L/SI:L) in the CVSS 4.0 vector correctly capture this cross-origin spillover. Defenders should weight the trust-model risk above the raw score.

Exploit ScenarioDerived

An attacker crafts a phishing email or message containing a login URL for a Nuxt application with a redirect parameter such as ?next=/..//evil.com. When a victim clicks the link and completes authentication, the server-side navigateTo function processes the unvalidated parameter; WHATWG URL parsing normalizes /..//evil.com to //evil.com, and the server issues an HTTP response with Location: //evil.com or a <meta http-equiv='refresh' content='0; url=//evil.com'> tag. The victim's browser follows the redirect to the attacker's site, where if the application uses OAuth, the authorization code appended to the callback URL is delivered directly to the attacker, enabling full account takeover without further interaction. No public exploit code is known to exist, but the attack requires only a crafted URL and a vulnerable application that forwards user input to navigateTo.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.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 – Jun 22, 2026

Server-side open redirect in Nuxt's navigateTo composable allows unauthenticated network attackers to bypass external-host checks by submitting path-normalized payloads such as /..//evil.com or /.//evil.com, which WHATWG URL parsing resolves to the protocol-relative URL //evil.com. Affected versions are Nuxt 4.0.0-4.4.6 and all 3.x releases before 3.21.7. Because Nuxt documentation presents navigateTo as the safe, built-in mechanism for post-login redirects, applications commonly pass unvalidated user-supplied redirect parameters directly to it - making OAuth authorization-code theft and phishing the principal real-world risks. No public exploit code has been identified at time of analysis and this CVE is not listed in CISA KEV.

RemediationAI

Upgrade the nuxt npm package to version 4.4.7 (for 4.x projects) or 3.21.7 (for 3.x projects); these are the vendor-confirmed fixed releases per GHSA-c9cv-mq2m-ppp3. The underlying fixes are delivered via commit https://github.com/nuxt/nuxt/commit/2cce6fb02e621196d56df92e05594e07469b5a6d (router composable patch) and https://github.com/nuxt/nuxt/commit/1f2dd5e78c77576437138e97671965573c232835, addressing pull requests https://github.com/nuxt/nuxt/pull/35115 and https://github.com/nuxt/nuxt/pull/35206. If an immediate upgrade is not feasible, applications should sanitize all user-supplied redirect parameters at the application layer before passing them to navigateTo, explicitly rejecting any input whose WHATWG-normalized form begins with // or resolves to a different origin than the application. An allowlist of permitted redirect paths or domains is the most robust compensating control; a blocklist approach is prone to bypass variants and is not recommended as a standalone mitigation. Note that the GHSA advisory also documents two related weaknesses - client-side XSS via navigateTo({ open: ... }) and an open redirect in reloadNuxtApp - which are patched in the same releases and should be addressed concurrently.

Affected VersionsENISA

nuxt 4.0.0 <4.4.7
nuxt 0 <3.21.7

Affected Packages

npm nuxt fix: 3.21.7, 4.4.7

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

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

Technical ContextAI · show details

Nuxt is a Vue.js full-stack framework distributed as the npm package nuxt (CPE: cpe:2.3:a:nuxt:nuxt:*:*:*:*:*:*:*:*). The affected function, navigateTo, is a first-party composable used for programmatic navigation and is explicitly documented as the safe path for post-login redirects. During server-side rendering, navigateTo evaluated whether a redirect target was external using hasProtocol(..., { acceptRelative: true }) against the raw input. Because inputs such as /..//evil.com start with /, they passed the same-origin check; however, WHATWG URL parsing subsequently normalized these paths to the protocol-relative form //evil.com. The normalized value was then written verbatim into the HTTP Location response header and into <meta http-equiv='refresh'> content on the SSR redirect page, causing browsers to resolve the redirect cross-origin. The root cause class is CWE-601 (URL Redirection to Untrusted Site / Open Redirect) - specifically, incomplete validation of redirect destinations due to failure to account for URL normalization semantics applied by the runtime. The patch collapses leading double-slashes in normalized pathnames to enforce same-origin constraints before writing to HTTP headers.

Know when Nuxt 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 (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 6.1 MEDIUM

Network-accessible with no privileges required; user must click a crafted link; scope changes as redirect impacts a cross-origin system receiving stolen credentials.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

Nuxt versions 4.0.0 before 4.4.7 and 3.x before 3.21.7 contain a server-side open redirect vulnerability in navigateTo that fails to properly validate path-normalized payloads like /..//evil.com and /.//evil.com. Attackers can bypass external-host checks using path-normalization techniques to redirect users to attacker-controlled sites via the Location header or meta-refresh, enabling phishing and OAuth authorization-code theft.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Medium
popular Vue.js SSR framework with significant npm adoption
Data Quality
6 sources
Confidence: High

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.2%
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
Medium
Technical Impact
Partial

Priority Score

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

More in Nuxt

View all
CVE-2023-3224 CRITICAL POC
9.8 Jun 13

Code Injection in GitHub repository nuxt/nuxt prior to 3.5.3. Rated critical severity (CVSS 9.8), this vulnerability is

CVE-2024-34344 HIGH POC
8.8 Aug 05

Nuxt is a free and open-source framework to create full-stack web applications and websites with Vue.js. Rated high seve

CVE-2024-23657 HIGH POC
8.8 Aug 05

Nuxt is a free and open-source framework to create full-stack web applications and websites with Vue.js. Rated high seve

CVE-2024-42352 HIGH POC
7.5 Aug 05

Nuxt is a free and open-source framework to create full-stack web applications and websites with Vue.js. Rated high seve

CVE-2026-61793 MEDIUM POC
6.9 Sep 17

Unauthenticated server-side request forgery in Nuxt OG Image (the npm package nuxt-og-image) 6.0.2 through 6.6.x allows

CVE-2025-52662 MEDIUM POC
6.1 Nov 07

A vulnerability in Nuxt DevTools has been fixed in version **2.6.4***. Rated medium severity (CVSS 6.9), this vulnerabil

CVE-2024-34343 MEDIUM POC
6.1 Aug 05

Nuxt is a free and open-source framework to create full-stack web applications and websites with Vue.js. Rated medium se

CVE-2023-0878 MEDIUM POC
6.1 Feb 17

Cross-site Scripting (XSS) - Generic in GitHub repository nuxt/framework prior to 3.2.1. Rated medium severity (CVSS 6.1

CVE-2022-4413 MEDIUM POC
6.1 Dec 12

Cross-site Scripting (XSS) - Reflected in GitHub repository nuxt/framework prior to v3.0.0-rc.13. Rated medium severity

CVE-2023-2138 CRITICAL
9.8 Apr 18

Use of Hard-coded Credentials in GitHub repository nuxtlabs/github-module prior to 1.6.2. Rated critical severity (CVSS

CVE-2026-41248 CRITICAL
9.1 Apr 24

Authentication/authorization bypass in Clerk's official JavaScript SDKs (@clerk/nextjs, @clerk/nuxt, @clerk/astro, and t

CVE-2026-53721 HIGH POC
8.8 Jun 12

Route-rule middleware bypass in Nuxt 3.11.0-3.21.6 and 4.0.0-4.4.6 allows remote attackers to evade routeRules-defined p

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