PT-2024-20006 · Unknown · Nuxt Devtools

Ohb00

·

Publicado

2024-08-05

·

Atualizado

2024-09-20

·

CVE-2024-23657

CVSS v3.1

8.8

Alta

VetorAV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
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

Exploit

Correção

RCE

Path traversal

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2024-23657
GHSA-RCVG-RGF7-PPPV

Produtos afetados

Nuxt Devtools