PT-2024-10100 · Linux+4 · Linux Kernel+4

Mortem

·

Publicado

2024-10-22

·

Atualizado

2026-02-21

·

CVE-2024-50066

CVSS v3.1

7.0

Alta

VetorAV:L/AC:H/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 está relacionado a uma condição de corrida na função move page tables(), especificamente entre move normal pmd() e retract page tables() no código THP. Isso pode levar à criação de entradas PMD inválidas, permitindo potencialmente a escalada de privilégios de usuário para kernel em determinadas arquiteturas, como x86. A vulnerabilidade pode ser explorada criando mapeamentos THP de shmem/arquivo e provocando uma condição de corrida entre as funções move normal pmd() e retract page tables().
A função move page tables() analisa o tipo da entrada PMD e o intervalo de endereços especificado para determinar como mover o próximo bloco de entradas da tabela de páginas. O mmap lock é mantido no modo de gravação, mas ainda não há bloqueios rmap. Para entradas PMD que apontam para tabelas de páginas e são totalmente cobertas pelo intervalo de endereços de origem, move pgt entry(NORMAL PMD, ...) é chamada, o que primeiro obtém bloqueios rmap e, em seguida, executa move normal pmd().
A função move normal pmd() obtém os bloqueios de tabela de páginas necessários na origem e no destino e, em seguida, move uma tabela de páginas inteira da origem para o destino. O problema é que os bloqueios rmap, que protegem contra a remoção simultânea de tabelas de páginas por retract page tables() no código THP, só são obtidos após a leitura da entrada PMD e a decisão sobre como movê-la.
Recomendações
Para resolver o problema, atualize o kernel do Linux para a versão 6.6.58 ou posterior. Como

Exploit

Correção

Race Condition

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

ALSA-2025_12746
ALSA-2025_12752
ALSA-2025_12753
ALSA-2025_16880
ALT-PU-2024-17211
ALT-PU-2025-12647
AZL-52169
BDU:2025-00297
CVE-2024-50066
MGASA-2024-0344
MGASA-2024-0345
OESA-2024-2367
OPENSUSE-SU-2024:14500-1
OPENSUSE-SU-2025:14705-1
USN-7276-1
USN-7277-1
USN-7310-1
USN-7383-1
USN-7383-2
USN-7384-1
USN-7384-2
USN-7385-1
USN-7386-1
USN-7403-1
USN-7451-1
USN-7468-1
USN-7523-1
USN-7524-1

Produtos afetados

Alt Linux
Linuxmint
Linux Kernel
Red Os
Ubuntu