PT-2020-17539 · Rust · Futures-Task Crate
Publicado
2020-05-03
·
Atualizado
2022-05-24
·
CVE-2020-35907
CVSS v3.1
5.5
Média
| Vetor | AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Nome do software vulnerável e versões afetadas
Versões do crate futures-task anteriores à 0.3.5
Descrição
Uma falha no crate futures-task permite a desreferência de um ponteiro NULL. As versões afetadas do crate utilizavam um
UnsafeCell no armazenamento local da thread para retornar uma referência de waker noop, partindo do princípio de que a referência nunca seria retornada por outra thread. Isso resultou em uma falha de segmentação se Waker::wake by ref() fosse chamado em um waker retornado de outra thread, devido à tentativa de desreferenciar um ponteiro que não era acessível a partir da thread principal.Recomendações
Para versões anteriores à 0.3.5, atualize para a versão 0.3.5 ou posterior para resolver o problema. Como solução temporária, considere evitar o uso de
futures task::noop waker ref() em ambientes multithread até que um patch seja aplicado. Restrinja o acesso à função Waker::wake by ref() para minimizar o risco de exploração.Exploit
Correção
NULL Pointer Dereference
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Futures-Task Crate