PT-2021-24275 · Unknown · Tremor-Script

Publicado

2021-09-16

·

Atualizado

2022-06-17

·

CVE-2021-45701

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-script anteriores à 0.11.6
Descrição:
O problema está relacionado a um erro de uso após liberação (use-after-free) no crate tremor-script. Ele afeta as construções da linguagem tremor-script, especificamente Merge e Patch, nas quais o resultado é atribuído de volta à expressão de destino e a expressão a ser mesclada ou as operações de patch precisam fazer referência ao event. A otimização para manipular o valor de destino no local, em vez de cloná-lo, era considerada segura, desde que fosse possível apenas mesclar ou aplicar patches em dados event ou dados estáticos. No entanto, quando state foi introduzido no tremor-script, surgiu uma nova possibilidade de manter os dados Value por mais tempo do que a duração de um evento, permitindo o acesso a regiões de memória já liberadas.
Recomendações:
Para versões anteriores à 0.11.6, considere atualizar para a versão 0.11.6 ou posterior, onde a falha foi corrigida removendo a otimização e sempre clonando a expressão de destino de um Merge ou Patch.
Como solução alternativa temporária, evite 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

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-45701
GHSA-3PP4-64MP-9CG9
GHSA-9QVW-46GF-4FV8
GHSA-Q2X5-6Q7Q-R872
RUSTSEC-2021-0111

Produtos afetados

Tremor-Script