PT-2021-18544 · Arenavec · Arenavec

Publicado

2021-01-12

·

Atualizado

2021-08-25

·

CVE-2021-29931

CVSS v3.1

7.5

Alta

VetorAV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Nome do software vulnerável e versões afetadas
Crate arenavec até 12/01/2021
Crate arenavec até a versão 0.1.1
Descrição
Foi descoberta uma falha no crate arenavec em que as versões afetadas não protegiam contra possíveis panics que poderiam ocorrer a partir das funções fornecidas pelo usuário T::default() e T::drop(). Um panic dentro de T::default() leva ao descarte de T não inicializado quando invocado a partir de common::Slice::<T, H>::new(). Um panic dentro de T::drop() leva a um descarte duplo de T quando invocado a partir de common::SliceVec::<T, H>::resize with() ou common::SliceVec::<T, H>::resize(). Qualquer um dos casos causa corrupção de memória na memória heap.
Recomendações
Para versões até 12/01/2021, considere desativar a função T::drop() para evitar problemas de liberação dupla até que um patch esteja disponível.
Para versões até 0.1.1, restrinja o uso de T::default() para evitar a liberação de memória não inicializada até que uma correção seja aplicada.
Como solução temporária, evite usar as funções common::Slice::<T, H>::new(), common::SliceVec::<T, H>::resize with() e common::SliceVec::<T, H>::resize() com as funções T::default() e T::drop() fornecidas pelo usuário até que o problema seja resolvido.

Correção

Memory Corruption

Double Free

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

Enumeração de Fraquezas

Identificadores relacionados

CVE-2021-29931
GHSA-327X-39HH-65WF
GHSA-955P-RC5H-HG6H
RUSTSEC-2021-0040

Produtos afetados

Arenavec