As ilhas do servidor Nuxt aceitam os suportes através do endpoint `/__nuxt_ Island/`. Quando um aplicativo tem um componente de ilha servidor que encaminha os suportes diretamente para a resolução dinâmica do componente da Vue (` `, `resolveDynamicComponent`, ou `h()`), um atacante pode passar um valor de string simples (em vez de uma definição de componente) para instantânear qualquer componente de Vue registrado globalmente ou qualquer elemento HTML nativo. Por exemplo: ````json { "como": "SomeGlobalComponent" } ```. ...resolve e torna "SomeGlobalComponent" se ele estiver globalmente registrado, mesmo que o atacante só possa dirigir adereços para o componente declarado da ilha. Do mesmo modo, `{ "as": "iframe" }` torna um elemento ` `.

Ao contrário do vetor RCE primário (GHSA- 9473 - 5 f 9 J- 94 wq), isto requer que o `vue.runtimeCompiler` seja ativado. Um suporte de string simples é suficiente para ativar a resolução do componente. A guarda de teclas ` template`/ `render` que aborda o vetor RCE não bloqueia os valores de string simples. Algumas bibliotecas de componentes expõem um prop polimórfico `as` / `asChild` que encaminha seu valor para ` `; `@ nuxt/ui` (via ` reka-ui`) é um exemplo amplamente usado. Um aplicativo é afetado se tal componente receber o valor controlado pelo atacante dentro de uma ilha do servidor. Note que isto não requer encaminhamento explícito de suporte: o componente ilha não declara cair como atributos em seu único elemento raiz, de modo que uma ilha cuja raiz é um componente `reka-ui` / `@ nuxt/ui` recebe implicitamente o valor `as` do atacante. Ao contrário do vetor RCE, não é necessário `vue.runtimeCompiler`, o que torna este vetor alcançable em mais configurações. Estas bibliotecas não são vulneráveis; são observadas apenas porque geralmente fornecem o abafa de componentes dinâmicos. A instalação do `@ nuxt/ui` não registra nenhum componente como uma ilha de servidor: o aplicativo deve definir a ilha (um arquivo `.server.vue`).

Fatores de Mitigação. - A exploração requer um componente de ilha do servidor que coloca um valor controlado pelo atacante em um caminho de componente dinâmico (` `, `resolveDynamicComponent`, `h()`, ou um polimórfico `as` / `asChild` prop), explicitamente ou através de um atributo de decadência quando a raiz da ilha é tal componente. - Os componentes reacháveis estão limitados ao que está realmente no registro global do aplicativo da ilha. Em um aplicativo padrão habilitado para páginas que é `RouterView' e `RouterLink` (ambos registrados globalmente pelo plug- in de router de páginas, que funciona até mesmo em ilhas componentes), mais qualquer componente `componentes/global/` e qualquer componente de um módulo registra globalmente. `RouterLink` em particular torna um atacante influenciado ` ` (e, porque uma ilha que não declara nenhum suporte encaminha todos os suportes, `to` e outros suportes `RouterLink` montam o mesmo encaminhamento). Os componentes da ilha são limitados ao registro de componentes de construção; um atacante não pode resolver componentes arbitrários. Nuxt `>= 3.1.0 = 4.0.0 < 4.5.1 `, com as ilhas componentes ativas. O comportamento de avançado de isle tem existido desde que as isles servidoras foram introduzidas em v 3.1.0, e este vetor não depende do `vue.runtimeCompiler`. Nuxt 2 Não é afetado.

Note que o patch (abaixo) fecha o caminho implícito de atributos- Fallthrough, que é o caso da maioria. Uma ilha que * explicitamente* encaminha um prop não confiado para resolução de componentes dinâmicos (ou encaminha- o sob um nome de prop diferente de "as") continua a ser a responsabilidade do aplicativo em todas as versões; veja Workarounds. Corrigido em ` unxt@ 4.5.1 ` e ` unuxt@ 3.21.10 `. Releases Patched rejeitam um prop de alto nível `as` island (HTTP) 400 no objetivo `/___nuxt_ ilha/`. Isto fecha o caminho implícito: a ilha apóia uma ilha não declara cair como atributos na sua única raiz, assim que um 'as' de nível superior alcançaria o componente de raiz polimórfica como prop (a convenção `reka-ui` / `@nuxt/ui`) e impulsionará resolução dinâmica do componente sem que o autor a acopla. Rejeitando os bloqueios de adereço de nível superior `como` que se desviam enquanto deixam os dados aninhados e outros nomes de adereço intactos.

O framework deliberadamente não tenta bloquear todos os casos: não pode indicar com segurança uma string usada como dados de um usado como seletor de componentes, e não tem nenhum gancho local de ilha no `h()' ou `resolveDynamicComponent()' da Vue. Uma ilha que encaminha explicitamente um valor não confiado para ` ` / `h()` / `resolveDynamicComponent()`, ou que encaminha- o sob um nome de prop diferente polimórfico, não está, portanto, coberta pelo patch e deve seguir a orientação abaixo. A documentação Nuxt agora alerta contra isso. Atualizar para ` unuxt@ 4.5.1 ` ou ` unuxt@ 3.21.10 `. Essa atualização também remove o objeto-prop RCE relacionado (GHSA- 9473 - 5 f 9 J- 94 wq). Além disso, em qualquer versão:.

1. Não encaminhar os suportes da ilha para ` `, `resolverDynamicComponent` ou `h()`. Mapeie um discriminador não confiável através de uma lista de permissões fechada de definições de componentes importados em vez de passar o valor bruto do prop. 2. Declare os adereços que uma ilha aceita ou defina `herançaAtrs: false` nele, para que a entrada do pedido não possa cair para um componente raiz polimórfico. 3. Evite registrar componentes sensíveis globalmente que poderiam vazar informações se instantâneos por um atacante. Registro de aconselhamento: GHSA- 48 hr- 524 c- v 5 w 3. Identificadores relacionados: CVE- 2026 - 71318.

Tempo: GitHub Advisory Database publicou este registro em 2026 - 08 - 05 T 21: 21: 33.000 Z e lista a sua última modificação como 2026 - 08 - 05 T 21: 21: 33.000 Z.

Gravidade: MODERAR. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N.

Software afetado e informações de versão: npm package nuxt — ECOSYSTEM: introduzido 4.0.0, corrigido 4.5.1. npm nuxt pacote — ECOSISTEM: introduzido 3.1.0, corrigido 3.21.10.

Classificação e evidência: identificadores de fraqueza CWE- 20. O registro contém 4 suporte de referências nestes tipos: WEB, PACKAGE.