PT-2021-18733 · Id-Map · Id-Map

Publicado

2021-02-26

·

Atualizado

2021-08-25

·

CVE-2021-30456

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
Crate id-map até 26/02/2021 para Rust
Descrição
Pode ocorrer um problema de liberação dupla no crate id-map devido a um panic em funções fornecidas pelo usuário. Especificamente, as funções IdMap::clone from, get or insert e remove set são afetadas. Em clone from, se uma chamada .clone() entrar em pânico, elementos descartados anteriormente podem ser liberados novamente. Em get or insert, se a função de inserção f fornecida pelo usuário entrar em pânico, memória não inicializada ou liberada anteriormente pode ser descartada. Em remove set, se a implementação Drop de um elemento entrar em pânico, elementos descartados anteriormente podem ser descartados novamente.
Recomendações
Para o crate id-map até 26/02/2021, considere atualizar para uma versão lançada após 26/02/2021 para mitigar o risco de problemas de liberação dupla.
Como solução temporária, considere implementar um tratamento de erros personalizado para as funções IdMap::clone from, get or insert e remove set para evitar que ocorram panics.
Restrinja o uso de funções fornecidas pelo usuário em get or insert para minimizar o risco de exploração.
Evite usar a função remove set com elementos que tenham uma implementação Drop que possa entrar em pânico.

Correção

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-30456
GHSA-8GMX-CPCG-F8H5
GHSA-RCCQ-J2M7-8FWR
GHSA-VFQX-HV88-F9CV
RUSTSEC-2021-0052

Produtos afetados

Id-Map