PT-2025-5342 · Vite+1 · Vite+1
Ivantsepp
·
Publicado
2025-01-21
·
Atualizado
2025-01-27
·
CVE-2025-24360
CVSS v3.1
6.5
Média
| Vetor | AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N |
Nome do Software Vulnerável e Versões Afetadas
Versões do Nuxt 3.8.1 até 3.15.2
Descrição
O problema surge devido às configurações padrão de CORS no Nuxt, permitindo que qualquer site envie solicitações ao servidor de desenvolvimento e leia a resposta. Isso pode levar ao roubo de código-fonte por sites maliciosos, especialmente para usuários com a opção padrão
server.cors usando o construtor Vite. A vulnerabilidade pode ser explorada mesmo se o servidor de desenvolvimento estiver acessível apenas localmente e não exposto à rede. Existem três causas principais: configurações padrão de CORS permissivas, falta de validação no cabeçalho Origin para conexões WebSocket e falta de validação no cabeçalho Host para solicitações HTTP. Isso pode permitir que invasores roubem código-fonte, acessem funcionalidades não destinadas a serem expostas e explorem certas funcionalidades de plugins.Recomendações
Para as versões do Nuxt 3.8.1 até 3.15.2, atualize para a versão 3.15.3 ou posterior para corrigir a vulnerabilidade.
Se estiver usando o recurso de integração de backend, adicione a origem do servidor de backend à opção
server.cors.origin, garantindo que uma origem específica seja definida em vez de '*'.
Se estiver usando um proxy reverso à frente do Nuxt, adicione o nome do host à nova opção server.allowedHosts.
Se estiver acessando o servidor de desenvolvimento via um domínio diferente de localhost ou *.localhost, adicione o nome do host à opção server.allowedHosts.
Para usuários de plugins que se conectam ao servidor WebSocket por conta própria a partir do navegador, tente atualizar para uma versão mais recente do Nuxt que corrija a vulnerabilidade. Se a conexão WebSocket parecer não estar funcionando, corrija o código do plugin para torná-lo compatível com a nova versão do Nuxt ou defina legacy.skipWebSocketTokenCheck: true, ciente das implicações de segurança.
Como uma solução temporária, considere definir server.cors como false ou limitar server.cors.origin a origens confiáveis para mitigar o risco de roubo de código-fonte.Exploit
Correção
Information Disclosure
Origin Validation Error
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Nuxt
Vite