PT-2024-3679 · Deno · Deno

Parrot409

·

Publicado

2024-04-18

·

Atualizado

2025-09-04

·

CVE-2024-32477

CVSS v3.1

7.7

Alta

VetorAV: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 👾

Enumeração de Fraquezas

Identificadores relacionados

BDU:2024-04023
CVE-2024-32477
GHSA-95CJ-3HR2-7J5J

Produtos afetados

Deno