Unknown · Nuxt Devtools · CVE-2024-23657
**Nome do software vulnerável e versões afetadas**
Versões do Nuxt Devtools anteriores à 1.3.9
**Descrição**
O problema decorre da falta de autenticação na função RPC `getTextAssetContent`, que está vulnerável a traversal de caminho. Combinado com a ausência de verificações de origem no manipulador WebSocket, um invasor pode interagir com uma instância do Devtools em execução local e extrair dados. Em determinadas configurações, um invasor poderia vazar o token de autenticação do Devtools e, em seguida, abusar de outras funções RPC para conseguir a execução remota de código (RCE). A função `getTextAssetContent` não verifica traversal de caminho, permitindo que um invasor leia arquivos arbitrários através do WebSocket RPC. O servidor WebSocket não verifica a origem da solicitação, levando ao sequestro de WebSocket entre sites (cross-site-websocket-hijacking). Os tokens de autenticação do Nuxt Devtools são armazenados no diretório home do usuário atual. Uma página da Web maliciosa pode se conectar ao WebSocket do Devtools, realizar um ataque de força bruta de traversal de diretório para localizar o token de autenticação e, em seguida, usar a função `writeStaticAssets` autenticada para criar um novo componente, Nitro Handler ou arquivo `app.vue`, que será executado automaticamente assim que o arquivo for alterado.
**Recomendações**
Para versões anteriores à 1.3.9, atualize para a versão 1.3.9 para corrigir a vulnerabilidade. Como solução temporária, considere desativar a função `getTextAssetContent` e restringir o acesso ao WebSocket do Devtools para minimizar o risco de exploração. Evite usar o `wri