PT-2021-24275 · Unknown · Tremor-Script
Publicado
2021-09-16
·
Atualizado
2022-06-17
·
CVE-2021-45701
CVSS v3.1
9.8
Crítica
| Vetor | AV: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
Produtos afetados
Tremor-Script