PT-2020-17639 · Rust · Lexer Crate
Publicado
2020-11-10
·
Atualizado
2022-05-03
·
CVE-2020-36458
CVSS v3.1
8.1
Alta
| Vetor | AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Crate lexer até 10/11/2020
Descrição
O problema está relacionado à implementação de Sync para ReaderResult<T, E> com um limite de trait de T: Send, E: Send, o que pode levar a corridas de dados e corrupção de memória quando múltiplas threads acessam &T ou &E simultaneamente. Isso ocorre porque a correspondência na enumeração pública ReaderResult<T, E> fornece acesso a &T e &E, permitindo o acesso a tipos T ou E que não são Sync.
Recomendações
Para o crate lexer até 10/11/2020, considere alterar os limites de trait impostos a T e E para T: Sync, E: Sync a fim de resolver o problema. Como solução alternativa temporária, considere restringir o acesso simultâneo a instâncias de ReaderResult<T, E> para minimizar o risco de corrupção de memória.
Exploit
Correção
Command Injection
Race Condition
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Lexer Crate