PT-2020-17626

CVE-2020-36446

·

Publicado

2020-11-15

·

Atualizado

2021-08-25

Descrição por

CVSS 3.1
8.1
Alta
MétricasAV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Nome do software vulnerável e versões afetadas
Versões do crate signal-simple até 15/11/2020
Descrição
Foi detectada uma falha no crate signal-simple, onde existem implementações incondicionais de Send e Sync para SyncChannel<T>. Isso permite que os usuários criem um comportamento indefinido no Rust seguro ao enviar T: !Send para outras threads com as APIs SyncChannel::send/recv. Usar T = Arc<Cell< > pode levar a corridas de dados e corrupção de memória, enquanto usar T = MutexGuard pode permitir o desbloqueio de um mutex por uma thread que não o bloqueou.
Recomendações
Para versões do crate signal-simple até 15/11/2020, considere evitar o uso de SyncChannel com tipos que não sejam Send, como Arc<Cell< > ou MutexGuard, para prevenir comportamento indefinido e possível corrupção de memória. Como solução temporária, considere restringir o uso das APIs SyncChannel::send/recv até que um patch esteja disponível. No momento, não há informações sobre uma versão mais recente que contenha uma correção para essa vulnerabilidade.
Impactos
Pesquisadores
Fornecedores
Produtos afetados
Identificadores relacionados
GHSA-36CG-4JFF-5863
GHSA-8892-84WF-CG8F
RUSTSEC-2020-0126
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾