PT-2025-3670 · Linux+6 · Linux Kernel+6
CVE-2024-57945
·
Publicado
2025-01-08
·
Atualizado
2026-08-25
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 a 6.6.74
Descrição
O problema está relacionado ao cálculo do endereço virtual do vmemmap no modelo sparse vmemmap. O endereço virtual é calculado como ((struct page *)VMEMMAP START - (phys ram base >> PAGE SHIFT)), e o va do struct page pode ser calculado com um offset: (vmemmap + (pfn)). No entanto, ao inicializar as struct pages, o kernel começa a partir da primeira página da mesma seção à qual phys ram base pertence. Se o endereço físico da primeira página não for (phys ram base >> PAGE SHIFT), então obtemos um va abaixo de VMEMMAP START ao calcular o va para o seu struct page. Isso pode levar a um problema de acesso fora dos limites. A correção introduz uma nova variável 'vmemmap start pfn' que é alinhada ao tamanho da seção de memória e a usa para calcular o endereço vmemmap em vez de phys ram base.
Recomendações
Para resolver o problema, atualize para a versão 6.6.74 ou posterior do kernel Linux. Como solução temporária, considere restringir o acesso ao módulo vulnerável
vmemmap para minimizar o risco de exploração. Evite usar a variável phys ram base em cálculos até que o problema seja resolvido.Exploit
Correção
DoS
Improper Initialization
Out of bounds Read
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 Os
Ubuntu