PT-2024-40972 · Glib · Glib

Publicado

2024-03-30

·

Atualizado

2024-03-30

Nenhuma

Não há classificações de severidade ou métricas disponíveis. Quando houver, atualizaremos as informações correspondentes na página.
Nome do software vulnerável e versões afetadas
Versões 0.15.0 e posteriores do glib
Descrição
O problema decorre da função VariantStrIter::impl get, que era incorreta e resultou em comportamento indefinido. Essa função, chamada internamente por implementações das características Iterator e DoubleEndedIterator, passava uma referência imutável a um ponteiro mutável para uma função C, fazendo com que o ponteiro fosse alterado no local. Alterações recentes no compilador Rust fizeram com que essas gravações incorretas fossem ignoradas ao compilar o crate glib com otimizações, resultando em travamentos devido a desreferências de ponteiros NULL. O problema ocorreu porque a função std::ffi::CStr::from ptr requer um ponteiro válido para uma string no estilo C, o que não foi fornecido.
Recomendações
Para as versões 0.15.0 e posteriores do glib, o problema foi corrigido passando o ponteiro do argumento de saída explicitamente como &mut p em vez de &p. Como solução temporária, considere restringir o uso da função VariantStrIter::impl get até que a correção seja aplicada.
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Identificadores relacionados

RUSTSEC-2024-0429

Produtos afetados

Glib