PT-2021-22478 · Tremor · Tremor

Mfelsche

·

Publicado

2021-09-17

·

Atualizado

2021-09-30

·

CVE-2021-39228

CVSS v3.1

9.8

Crítica

VetorAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Nome do software vulnerável e versões afetadas
Versões do Tremor 0.7.2 a 0.11.6
Descrição
A falha é um problema de segurança de memória que ocorre ao usar patch ou merge em state e atribuir o resultado de volta a state. Isso permite o acesso a regiões de memória já liberadas, que podem ser enviadas via TCP ou HTTP. A vulnerabilidade requer que o servidor Tremor execute um script tremor-script que utilize a construção de linguagem mencionada.
Recomendações
Para as versões 0.7.2 a 0.11.6, atualize para a versão 0.11.6 ou posterior, que remove a otimização e sempre clona a expressão de destino de um Merge ou Patch.
Se a atualização não for possível, uma solução alternativa é evitar a otimização introduzindo uma variável temporária e não reatribuindo imediatamente a state, por exemplo:
let tmp = merge state of event end;
let state = tmp

Exploit

Correção

Use After Free

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

Enumeração de Fraquezas

Identificadores relacionados

CVE-2021-39228
GHSA-MC22-5Q92-8V85

Produtos afetados

Tremor