PT-2024-3679 · Deno · Deno
Parrot409
·
Publicado
2024-04-18
·
Atualizado
2025-09-04
·
CVE-2024-32477
CVSS v3.1
7.7
Alta
| Vetor | AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
Nome do software vulnerável e versões afetadas
Versões do Deno anteriores à 1.42.2
Descrição
O problema é causado por erros de sincronização ao utilizar um recurso compartilhado no ambiente de execução do Deno para JavaScript e TypeScript. A exploração dessa vulnerabilidade pode permitir que um invasor divulgue informações protegidas. Ao usar sequências de escape ANSI e uma corrida entre
libc::tcflush(0, libc::TCIFLUSH) e a leitura da entrada padrão, é possível manipular o prompt de permissão e forçá-lo a permitir uma ação insegura, independentemente da entrada do usuário. Algumas sequências de escape ANSI funcionam como uma solicitação de informações ao emulador de terminal mestre, e o emulador de terminal envia a resposta de volta pelo canal PTY. Os fluxos padrão também usam esse canal para enviar e receber dados. Por exemplo, a sequência 033[6n solicita a posição atual do cursor. Essas sequências permitem anexar dados à entrada padrão do Deno. Isso permite que um invasor contorne a política de permissões do Deno.Recomendações
Para versões do Deno anteriores à 1.42.2, atualize para a versão 1.42.2 ou posterior para resolver o problema. Como solução temporária, considere restringir o uso de sequências de escape ANSI no emulador de terminal para minimizar o risco de exploração. Evite usar a função
libc::tcflush(0, libc::TCIFLUSH) em conjunto com a leitura da entrada padrão até que o problema seja resolvido.Exploit
Correção
OS Command Injection
Race Condition
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Deno