PT-2020-17523 · Rust · Ordnung Crate

Publicado

2020-09-03

·

Atualizado

2021-08-25

·

CVE-2020-35891

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
Versões do crate ordnung até 0.0.1
Versões do crate ordnung até 03/09/2020
Descrição
O problema diz respeito ao compact::Vec no crate ordnung, que viola a segurança da memória. Isso ocorre por meio de uma liberação dupla do remove() e acesso fora dos limites para grandes capacidades. A função remove() não é à prova de pânico e causa uma liberação dupla quando um índice maior que o comprimento é fornecido. Além disso, ela lida incorretamente com grandes capacidades, causando acesso fora dos limites em 32 bits e incompatibilidade de layout do alocador em 64 bits.
Recomendações
Para versões do crate ordnung até 0.0.1, considere desativar a função remove() em compact::Vec para evitar problemas de liberação dupla até que um patch esteja disponível.
Para versões do crate ordnung até 2020-09-03, restrinja o uso de compact::Vec com grandes capacidades para minimizar o risco de acesso fora dos limites.
No momento, não há informações sobre uma versão mais recente que contenha uma correção para essa vulnerabilidade.

Exploit

Out of bounds Read

Double Free

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

Enumeração de Fraquezas

Identificadores relacionados

CVE-2020-35891
GHSA-4WJ3-P7HJ-CVX8
GHSA-QRWC-JXF5-G8X6
RUSTSEC-2020-0038

Produtos afetados

Ordnung Crate