PT-2021-18555

CVE-2021-29942

·

Publicado

2021-02-24

·

Atualizado

2021-08-25

Descrição por

CVSS 2.0
7.5
Alta
MétricasAV:N/AC:L/Au:N/C:P/I:P/A:P
Nome do software vulnerável e versões afetadas
reorder crate até 24/02/2021 para Rust
Descrição
O problema ocorre quando o método len() de um iterador retorna um valor muito grande, fazendo com que swap index crie um vetor com membros não inicializados. Se o valor retornado por len() for menor do que o número real de elementos gerados, swap index pode escrever fora dos limites, ultrapassando o vetor alocado. De acordo com a documentação do Rust, len() e size hint() destinam-se principalmente à otimização e não devem levar a violações de segurança de memória.
Recomendações
Para versões do crate reorder até 24/02/2021, atualize para a versão 1.1.0 ou posterior, pois as versões anteriores foram removidas do crates.io.
Como solução temporária, considere usar a função swap index com cautela, garantindo que o método len() do iterador retorne um valor preciso para evitar violações de segurança de memória.
Explorabilidade
Exploit
Correção
Impactos
Fornecedores
Produtos afetados
Enumeração de fraquezas
Identificadores relacionados
GHSA-3H87-V52R-P9RG
GHSA-JPWG-6GF5-5VH9
RUSTSEC-2021-0050
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾