CVE-2026-56697: Nuxt Protocol-Relative URL Open Redirect in reloadNuxtApp
Nuxt, a popular web framework, has a vulnerability in its `reloadNuxtApp` function that allows attackers to trick users into visiting malicious websites. The flaw stems from how the function validates URLs—it checks whether a path starts with a script protocol (like `javascript:`), but protocol-relative URLs (those beginning with `//`) slip through this check. When a user-supplied path like `//evil.com` is processed, the browser resolves it using the current page's protocol (http or https), redirecting to the attacker's domain instead. This enables phishing attacks or theft of sensitive authorization codes from OAuth flows. Affected versions are Nuxt 4.0.0 through 4.4.6 and all 3.x versions before 3.21.7.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 6.1 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
- Weaknesses (CWE)
- CWE-601
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-22 / 2026-06-25
NVD description (verbatim)
Nuxt versions 4.0.0 before 4.4.7 and 3.x before 3.21.7 accept protocol-relative paths such as //evil.com in the reloadNuxtApp function; these pass the script-protocol check but resolve to a cross-origin URL against the current page protocol. Attackers can inject paths like //evil.com to redirect users to attacker-controlled hosts, enabling phishing and OAuth authorization-code theft.
4 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The vulnerability is a URL validation bypass in the `reloadNuxtApp` function affecting Nuxt v4 and v3. The function implements a allowlist check to prevent script-protocol injection, but does not account for protocol-relative URLs. A path like `//evil.com` passes the script-protocol check because it does not match patterns like `javascript:` or `data:`, yet the browser interprets `//` as inheriting the current page's protocol, resulting in a cross-origin redirect. This falls under CWE-601 (Open Redirect). The attack requires user interaction (clicking a link or visiting a compromised page) but no authentication or special privileges.
Business impact
Organizations deploying Nuxt applications face phishing and credential theft risks. Attackers can craft links or inject malicious redirect payloads that appear legitimate because they originate from the trusted Nuxt application, increasing click-through rates on phishing campaigns. OAuth flows are particularly vulnerable: an attacker can intercept the authorization code before the user is redirected to the attacker's fake login page, then replay that code or use it to compromise the user's account. The impact is elevated because Nuxt is widely used in production SaaS and consumer applications where trust in the initial domain is high.
Affected systems
Nuxt 4.0.0 through 4.4.6 and Nuxt 3.x through 3.21.6 are vulnerable. Any application using the `reloadNuxtApp` function with user-controlled or partially controlled URL parameters is at risk. Applications relying on Nuxt's URL handling for authentication flows (SSO, OAuth) or sensitive redirects are especially exposed. Versions 4.4.7 and 3.21.7 or later contain the fix.
Exploitability
This vulnerability is straightforward to exploit and requires no special tooling or advanced knowledge. An attacker crafts a URL containing a protocol-relative path (e.g., `?redirect=//attacker.com`) and shares it via phishing email, social engineering, or injection into a compromised third-party resource. The attack succeeds if a user clicks the link or if the application automatically processes the parameter. The CVSS score of 6.1 (MEDIUM) reflects the requirement for user interaction and the absence of immediate system-level compromise, but the low barrier to exploitation and real-world harm (credential theft) mean practical risk may exceed the base score depending on deployment context.
Remediation
Upgrade Nuxt to version 4.4.7 or later for v4 deployments, or to version 3.21.7 or later for v3 deployments. The patches correct the URL validation logic in `reloadNuxtApp` to reject protocol-relative paths. Organizations should also audit their application code for any custom redirect logic that may have similar gaps, and implement additional server-side validation of redirect targets whenever possible.
Patch guidance
1. Update your Nuxt dependency immediately: for v4, upgrade to 4.4.7+; for v3, upgrade to 3.21.7+. Verify the specific patch version against your package manager and the Nuxt release notes. 2. If you are unable to patch immediately, restrict or remove user-controlled input to the `reloadNuxtApp` function, or implement a strict allowlist of permitted redirect destinations on the server side. 3. Consider adding a Content Security Policy (CSP) directive to restrict where the page can redirect, as a defense-in-depth measure. 4. Test your application after patching to ensure no regression in legitimate redirect flows.
Detection guidance
Monitor application logs and analytics for unusual redirect patterns: look for requests to `reloadNuxtApp` with protocol-relative or unexpected external domains in the URL parameter. Implement logging of all redirect events in your Nuxt application, including the source and destination. Network-level detection is limited because the redirect occurs in the browser, but you can use Web Application Firewall (WAF) rules to flag requests containing suspicious URL patterns like `//` in common parameter names (e.g., `redirect`, `return`, `next`, `url`). Client-side monitoring via Content Security Policy violation reports can also alert you to unexpected cross-origin redirects.
Why prioritize this
While the CVSS score is MEDIUM, this vulnerability warrants prompt patching because it directly enables credential and authorization-code theft in a trusted context. Nuxt is widely deployed, the fix is straightforward to apply, and the exploitation method is trivial. Organizations running Nuxt with user-facing authentication or OAuth flows should treat this as high priority. However, organizations where Nuxt is used for internal or non-authentication-critical applications may operate at lower risk.
Risk score, explained
The CVSS 3.1 score of 6.1 reflects a network-based attack (`AV:N`), low attack complexity (`AC:L`), no privilege requirement (`PR:N`), required user interaction (`UI:R`), changed scope (`S:C`), and limited confidentiality and integrity impact (`C:L/I:L`) with no availability impact (`A:N`). The user-interaction requirement prevents a higher score. In practice, the severity may feel higher because the attack enables phishing and OAuth theft, which have severe downstream consequences. The `S:C` (scope changed) vector appropriately captures the cross-origin nature of the attack.
Frequently asked questions
Do I need to upgrade if I don't use the `reloadNuxtApp` function directly?
If your Nuxt application or any of its dependencies call `reloadNuxtApp`, you should upgrade. You can search your codebase and node_modules for this function to confirm exposure. Even if you don't call it directly, a third-party Nuxt plugin or middleware might.
What's the difference between a protocol-relative URL and other open redirects?
A protocol-relative URL (e.g., `//evil.com`) is a sneaky variant of an open redirect because it passes simpler validation checks that look for explicit schemes like `http://` or `javascript:`. The browser silently resolves `//evil.com` as `https://evil.com` or `http://evil.com` depending on the current page's protocol, making it appear to the user that the redirect is legitimate since no scheme is shown.
Can I work around this without upgrading?
Yes, as a temporary measure: strip or validate any user-supplied input before it reaches `reloadNuxtApp`, implement a server-side allowlist of permitted destinations, or use Content Security Policy directives to restrict redirect targets. However, upgrading is strongly preferred because the fix is in the framework itself and requires no application-level workarounds.
Is this vulnerability in the CISA Known Exploited Vulnerabilities (KEV) catalog?
No, this vulnerability is not currently listed in the CISA KEV catalog as of the latest data. However, absence from KEV does not mean it is not actively exploited; you should still prioritize patching based on your risk assessment and deployment context.
This analysis is based on publicly disclosed information as of June 2026. Patch versions and remediation guidance should be verified against official Nuxt release notes and security advisories at nuxt.com. Organizations deploying Nuxt in production should conduct their own risk assessment, considering their specific use cases, dependency chains, and network environment. This explainer is provided for informational purposes and does not constitute professional security advice. Always test patches in a non-production environment before deployment. Source: NVD (public-domain), retrieved 2026-07-29. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2026-56326MEDIUMNuxt Open Redirect Vulnerability in navigateTo (CVSS 6.1)
- CVE-2025-32748MEDIUMDell PowerFlex Manager Host Header Injection Vulnerability
- CVE-2026-10856MEDIUMMISP Dashboard URL Validation Bypass – Phishing Risk
- CVE-2026-10861MEDIUMMISP Open Redirect Vulnerability in Post-Login Flow
- CVE-2026-11477MEDIUMhsweb OAuth2 Open Redirect Vulnerability – Patch Guide
- CVE-2026-12049MEDIUMpgAdmin 4 Open Redirect in MFA Flow
- CVE-2026-12622MEDIUMGridTime 3000 GNSS Time Server Open Redirect Vulnerability
- CVE-2026-12804MEDIUMOpen Redirect in Lemonldap-ng SAML CDC Endpoint – Patch Guidance