Description
Nuxt is an open-source web development framework for Vue.js. Prior to versions 3.21.7 and 4.4.7, <NuxtLink> did not validate the URL scheme of values bound to its to or href props before rendering them into the href attribute of the underlying <a> element. When an application binds attacker-controlled input (a query parameter, a CMS field, a user-supplied profile URL) to <NuxtLink :to> or :href, the attacker can supply a javascript: or vbscript: URL that is reflected verbatim into the rendered markup. Clicking the link executes the supplied script in the origin of the Nuxt application, resulting in reflected DOM-based cross-site scripting. A data:text/html,... payload reflected through the same sink does not execute in the application's origin but enables a same-tab phishing surface anchored to a legitimate application link. The same value was exposed to consumers of the component's custom slot via the href and route.href props, so applications that re-bind those values to their own anchors were affected identically. This issue has been patched in versions 3.21.7 and 4.4.7.
Published: 2026-06-12
Score: 5.1 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Nuxt <NuxtLink> components failed to validate the URL scheme of values bound to to or href props before rendering them into the underlying <a> element. As a result, an attacker who can control the input that is bound—such as through a query parameter, CMS field, or user‑supplied profile URL—can embed a javascript: or vbscript: URL that is reflected verbatim into the page. Activating that link executes the script in the application origin, allowing execution of arbitrary code on the client side. A data:text/html payload is also reflected and, while it does not execute in the origin, it creates a same‑tab phishing surface that can be used for social engineering attacks. The vulnerability also extends to values exposed via the component’s custom slot, meaning that applications that rebinding those values to their own anchors are equally affected.

Affected Systems

This issue affects all Nuxt versions prior to 3.21.7 and 4.4.7 for the nuxt:nuxt product. Users running those older releases are exposed to reflected DOM‑based XSS through unsanitised URLs in <NuxtLink> components.

Risk and Exploitability

The CVSS score of 5.1 indicates a medium severity vulnerability. The EPSS score is reported as less than 1 %, suggesting a low likelihood of exploitation at present. The vulnerability is not listed in the CISA KEV catalog, so there is no known widespread exploitation. Attackers would need to place malicious input into a field that is later bound to a <NuxtLink>, so the likely attack vector is through crafted URLs or user-supplied content that the application reflects. If exploited, an attacker could run scripts in the application’s origin, potentially compromising user data or session tokens, or create a phishing surface within the same tab.

Generated by OpenCVE AI on June 12, 2026 at 15:27 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Nuxt to version 3.21.7 or 4.4.7 where the vulnerability is fixed
  • If upgrading is not immediately possible, sanitize or validate all URLs bound to <NuxtLink> to allow only safe schemes such as http:, https:, mailto:, or relative paths
  • Ensure that any values exposed through the component’s custom slot are also validated or escaped before use in anchors to prevent re‑binding attack vectors

Generated by OpenCVE AI on June 12, 2026 at 15:27 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 12 Jun 2026 15:45:00 +0000

Type Values Removed Values Added
First Time appeared Nuxt
Nuxt nuxt
Vendors & Products Nuxt
Nuxt nuxt

Fri, 12 Jun 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 12 Jun 2026 14:30:00 +0000

Type Values Removed Values Added
Description Nuxt is an open-source web development framework for Vue.js. Prior to versions 3.21.7 and 4.4.7, <NuxtLink> did not validate the URL scheme of values bound to its to or href props before rendering them into the href attribute of the underlying <a> element. When an application binds attacker-controlled input (a query parameter, a CMS field, a user-supplied profile URL) to <NuxtLink :to> or :href, the attacker can supply a javascript: or vbscript: URL that is reflected verbatim into the rendered markup. Clicking the link executes the supplied script in the origin of the Nuxt application, resulting in reflected DOM-based cross-site scripting. A data:text/html,... payload reflected through the same sink does not execute in the application's origin but enables a same-tab phishing surface anchored to a legitimate application link. The same value was exposed to consumers of the component's custom slot via the href and route.href props, so applications that re-bind those values to their own anchors were affected identically. This issue has been patched in versions 3.21.7 and 4.4.7.
Title Nuxt: Reflected XSS in `<NuxtLink>` via unsanitised `javascript:` or `data:` URL
Weaknesses CWE-79
CWE-83
References
Metrics cvssV4_0

{'score': 5.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-06-12T15:05:46.393Z

Reserved: 2026-06-10T16:43:31.241Z

Link: CVE-2026-53722

cve-icon Vulnrichment

Updated: 2026-06-12T15:05:42.727Z

cve-icon NVD

Status : Undergoing Analysis

Published: 2026-06-12T15:16:31.427

Modified: 2026-06-12T16:01:25.477

Link: CVE-2026-53722

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-06-12T15:30:31Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

  • CWE-83

    Improper Neutralization of Script in Attributes in a Web Page