Vulnerabilities

Vulnerability · CVE-2026-71318

Unauthorized Component Instantiation via Server Island Props in Nuxt

Published Jul 27, 2026 · catalog updated Aug 5, 2026 · Unauthorized Component Instantiation via

Last checked Nov 2, 2026. A connected source was read within the last 7 days.

Check if you run it

No confirmed exploitation is on record for CVE-2026-71318. EPSS is 0.32%. Act only if a listed version of Unauthorized Component Instantiation via is installed.

Gaps on this record

  • The stored product name is a package slug. The name on this page is taken from the title (Unauthorized Component Instantiation via).
  • No vendor fix or required action is stored. Compare the linked advisory before you change production.
Severity
Medium4.8
Known exploitation
Not in CISA/VulnCheck KEV
EPSS
0.32%
Remediation
Version ranges on file
Affected products
npm nuxt

## Impact Nuxt server islands accept props via the endpoint. When an application has a server island component that forwards props directly into Vue's dynamic component resolution ( , , or ), an attacker can pass a plain string value (rather than a component definition) to instantiate any globally-registered Vue component or any native HTML element. For example: ...resolves and renders if it is globally registered, even though the attacker should only be able to drive props for the island's declared component. Similarly, renders an element. Unlike the primary RCE vector (GHSA-9473-5f9j-94wq), this does **not** require to be enabled. A plain string prop is sufficient to trigger component resolution. The / key guard that addresses the RCE vector does not block plain string values. Some component libraries expose a polymorphic / prop that forwards its value into ; (via ) is a widely used example. An application is affected if such a component receives the attacker-controlled value inside a server island. Note this does not require explicit prop forwarding: island props the island component does not declare fall through as attributes onto its single root element, so an island whose root is a / component receives the attacker's value implicitly. Unlike the RCE vector, no is required, which makes this vector reachable in more configurations. These libraries are not themselves vulnerable; they are noted only because they commonly provide the dynamic-component sink. Installing does not by itself register any component as a server island: the application must define the island (a file). ## Mitigating factors - Exploitation requires a server island component that puts an attacker-controlled value onto a dynamic-component path ( , , , or a polymorphic / prop), either explicitly or via attribute fallthrough when the island's root is such a component. - Reachable components are limited to what is actually in the island app's global registry. In a default pages-enabled app that i

Are you affected?

Enter the version you run. The result uses only the ranges stored on this record.

The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.

  • npm nuxt>= 3.1.0, < 3.21.10
  • npm nuxt>= 4.0.0, < 4.5.1

How to fix CVE-2026-71318

  • Upgrade

    CVE-2026-71318 lists a fix boundary at 3.21.10. Compare the installed build with that boundary before you change production.

  • Version check

    Affected < 3.21.10

  • Advisory

    Open the inventory_github record and follow its fix.

  • Official advisories

What to do

Three questions, each answered from this record only. Confirm the vendor advisory before you patch.

Should you patch?

No confirmed exploitation is on record for CVE-2026-71318. EPSS is 0.32%. Act only if a listed version of Unauthorized Component Instantiation via is installed.

Which versions are affected?

Compare what you have installed with >= 3.1.0, < 3.21.10, >= 4.0.0, < 4.5.1. Compare the installed version with the linked vendor advisory before you change production.

What should an analyst verify?

CWE-20: Improper Input Validation. EPSS 0.32%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.

Technology hubs

Code

The project this record applies to. Exploit listings stay in References.

Timeline

Detection, updates, and resolution for this record.

  1. Jul 27, 2026 · Maintainer security tabs

    Detected

    ## Impact Nuxt server islands accept props via the endpoint. When an application has a server island component that forwards props directly into Vue's dynamic component resolution ( , , or ), an attacker can pass a plain string value (rather than a component definition) to instantiate any globally-registered Vue component or any native HTML element. For example: ...resolves and renders if it is gl

  2. Aug 5, 2026 · Maintainer security tabs

    Updated

    ## Impact Nuxt server islands accept props via the endpoint. When an application has a server island component that forwards props directly into Vue's dynamic component resolution ( , , or ), an attacker can pass a plain string value (rather than a component definition) to instantiate any globally-registered Vue component or any native HTML element. For example: ...resolves and renders if it is gl

Sources

  • Maintainer security tabsVendor advisoryGHSA-48hr-524c-v5w3

    ## Impact Nuxt server islands accept props via the endpoint. When an application has a server island component that forwards props directly into Vue's dynamic component resolution ( , , or ), an attacker can pass a plain string value (rather than a component definition) to instantiate any globally-registered Vue component or any native HTML element. For example: ...resolves and renders if it is gl

    github.com

Freshness

Last verified in this catalog Nov 2, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.

  • Maintainer security tabsNov 2, 2026