Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. nuxt
  4. ›
  5. GHSA-m3q2-p4fw-w38m

GHSA-m3q2-p4fw-w38m: Cross-site scripting via <NoScript> slot content in Nuxt's head components

June 16, 2026

Nuxt’s globally registered <NoScript> component (from @unhead/vue head components, re-exported by Nuxt) wrote its default-slot content to the innerHTML of the <noscript> head tag, bypassing the HTML escaping that {{ }} interpolation normally applies in Vue templates.

Applications that placed untrusted, attacker-controllable data inside a <NoScript> slot, for example:

<NoScript>{{ route.query.banner }}</NoScript>

would emit that value unescaped inside <noscript> in the server-rendered HTML. With scripting enabled, the HTML parser treats <noscript> content in <head> under the “in head noscript” insertion mode: any tag other than link, meta, noframes, or style implicitly closes <noscript> and is re-processed in the head. A payload such as <script>...</script> therefore escapes the element and executes in the document context.

Sibling head components (<Style>, <Title>) were not affected because they already routed slot text through the safe textContent path.

References

  • github.com/advisories/GHSA-m3q2-p4fw-w38m
  • github.com/nuxt/nuxt/commit/4b054e9d95f8daf366cb144b52782047c511a66e
  • github.com/nuxt/nuxt/commit/7fea9fd687f1dacbfb63db5fae5839896b017a0e
  • github.com/nuxt/nuxt/security/advisories/GHSA-m3q2-p4fw-w38m

Code Behaviors & Features

Detect and mitigate GHSA-m3q2-p4fw-w38m with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 3.21.7, all versions starting from 4.0.0 before 4.4.7

Fixed versions

  • 3.21.7
  • 4.4.7

Solution

Upgrade to versions 3.21.7, 4.4.7 or above.

Impact 5.4 MEDIUM

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N

Learn more about CVSS

Weakness

  • CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Source file

npm/nuxt/GHSA-m3q2-p4fw-w38m.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Tue, 23 Jun 2026 12:22:50 +0000.