p PatchFirst

PatchFirst · Vulnerabilidades recientes

Vulnerabilidades de unhead

Vulnerabilidades publicadas para unhead en los últimos 30 días: 0. Incluidas en el catálogo KEV: 0.

Filtrar vulnerabilidades
Borrar filtros

Vulnerabilidades: 4

  1. GHSA-x7mm-9vvv-64w8

    Baja · CVSS 2.3Corrección disponible

    unhead: Streaming SSR `streamKey` injected into inline script without identifier validation

    ### Summary `createStreamableHead({ streamKey })` interpolated its `streamKey` argument directly into the streaming SSR bootstrap and suspense-chunk inline scripts without identifier validation or escaping. If an application forwards untrusted data into that configuration value, the rendered scripts become a script-injection sink. ### Details `streamKey` was embedded into JavaScript source via dot notation in two public helpers: * `createBootstrapScript()` returned `<script>window.${streamKey}={...}</script>` * `renderSSRHeadSuspenseChunk()` returned `window.${streamKey}.push(...)` No escaping, quoting, or identifier validation was appli

    • Actualiza a 3.0.1
    Publicación Actualización
  2. CVE-2026-39315

    Media · CVSS 6.1EPSS 0,29%Corrección disponible

    Unhead has a hasDangerousProtocol() bypass via leading-zero padded HTML entities in useHeadSafe()

    Unhead is a document head and template manager. Prior to 2.1.13, useHeadSafe() is the composable that Nuxt's own documentation explicitly recommends for rendering user-supplied content in <head> safely. Internally, the hasDangerousProtocol() function in packages/unhead/src/plugins/safe.ts decodes HTML entities before checking for blocked URI schemes (javascript:, data:, vbscript:). The decoder uses two regular expressions with fixed-width digit caps. The HTML5 specification imposes no limit on leading zeros in numeric character references. When a padded entity exceeds the regex digit cap, the decoder silently skips it. The undecoded string is

    • Actualiza a 2.1.13
    Publicación Actualización
  3. CVE-2026-31873

    Baja · CVSS 0EPSS 0,25%Corrección disponible

    Unhead has a Bypass of URI Scheme Sanitization in makeTagSafe via Case-Sensitivity

    Unhead is a document head and template manager. Prior to 2.1.11, The link.href check in makeTagSafe (safe.ts) uses String.includes(), which is case-sensitive. Browsers treat URI schemes case-insensitively. DATA:text/css,... is the same as data:text/css,... to the browser, but 'DATA:...'.includes('data:') returns false. An attacker can inject arbitrary CSS for UI redressing or data exfiltration via CSS attribute selectors with background-image callbacks. This vulnerability is fixed in 2.1.11.

    • Actualiza a 2.1.11
    Publicación Actualización
  4. CVE-2026-31860

    Media · CVSS 5.3EPSS 0,27%Corrección disponible

    Unhead has a XSS bypass in `useHeadSafe` via attribute name injection and case-sensitive protocol check

    Unhead is a document head and template manager. Prior to 2.1.11, useHeadSafe() can be bypassed to inject arbitrary HTML attributes, including event handlers, into SSR-rendered <head> tags. This is the composable that Nuxt docs recommend for safely handling user-generated content. The acceptDataAttrs function (safe.ts, line 16-20) allows any property key starting with data- through to the final HTML. It only checks the prefix, not whether the key contains spaces or other characters that break HTML attribute parsing. This vulnerability is fixed in 2.1.11.

    • Actualiza a 2.1.11
    Publicación Actualización

Comprueba tu servidor

Compara tu pila y las versiones instaladas con las bases actuales de vulnerabilidades.

Comprueba tu servidor →