PT-2024-32793 · Linux+8 · Linux Kernel+8
Dragos Tatulea
·
Publicado
2024-09-10
·
Atualizado
2025-09-29
·
CVE-2024-47748
CVSS v3.1
7.8
Alta
| Vetor | AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões do kernel Linux anteriores à 6.6.58
Descrição
O problema diz respeito ao kernel Linux, especificamente ao componente vhost vdpa. Trata-se de uma atribuição incorreta do token do produtor de bypass de IRQ. O problema surge porque a função
irq bypass unregister producer() é chamada em vhost vdpa setup vq irq(), o que pode levar a problemas com a validade do ponteiro do token. O ciclo de vida do token deve estar vinculado a VHOST SET VRING CALL em vez de vhost vdpa setup vq irq(). Para corrigir isso, o token do produtor de bypass de IRQ é configurado ao lidar com VHOST SET VRING CALL, e o produtor é desregistrado antes de chamar vhost vring ioctl() para evitar um possível uso após liberação, já que eventfd poderia ter sido liberado em vhost vring ioctl(). Esse registro e cancelamento de registro ocorrem apenas se DRIVER OK estiver definido.Recomendações
Para resolver o problema, atualize o kernel do Linux para a versão 6.6.58 ou posterior. Como solução alternativa temporária, considere desativar a função
vhost vdpa setup vq irq() até que um patch esteja disponível. Restrinja o acesso ao componente vhost vdpa para minimizar o risco de exploração. Evite usar o eventfd ctx como token no endpoint da API afetado até que o problema seja resolvido.Exploit
Correção
Use After Free
Double Free
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Alt Linux
Astra Linux
Debian
Linuxmint
Linux Kernel
Red Hat
Red Os
Suse
Ubuntu