PT-2022-20562 · Wasmtime · Wasmtime
Alexcrichton
·
Publicado
2022-07-12
·
Atualizado
2022-07-27
·
CVE-2022-31146
CVSS v3.1
8.8
Alta
| Vetor | AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões do Wasmtime 0.37.0 a 0.38.1
Descrição
Existe um bug no gerador de código do Wasmtime, o Cranelift, em que funções que utilizam tipos de referência podem estar incorretamente sem os metadados necessários para a coleta de lixo em tempo de execução. Isso significa que, se ocorrer uma coleta de lixo em tempo de execução, a passagem de coleta de lixo irá erroneamente considerar que essas funções não possuem referências ativas a valores coletados, recuperando-os e desalocando-os. A função continuará então a usar os valores, assumindo que eles não foram recolhidos, levando posteriormente a um uso após liberação (use-after-free). Esse bug foi introduzido na migração para o alocador de registros
regalloc2, que ocorreu na versão 0.37.0 do Wasmtime.Recomendações
Para resolver o problema, atualize para a versão 0.38.2 do Wasmtime.
Como solução temporária, considere desativar a proposta de tipos de referência passando
false para wasmtime::Config::wasm reference types.Como alternativa, faça o downgrade para o Wasmtime 0.36.0 ou anterior.
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
Produtos afetados
Wasmtime