CVE-2024-35797 in Linuxinformação

Sumário

de VulDB • 23/06/2026

No kernel do Linux, a seguinte vulnerabilidade foi corrigida:

mm: cachestat: corrige dois bugs em shmem

Quando o cachestat no shmem sofre uma condição de corrida (race condition) com troca (swapping) e invalidação, existem dois possíveis erros:

1) Um erro na operação swapin pode ter resultado em um entry de swap corrompido ("poisoned") no xarray do inode do shmem. Chamar get_shadow_from_swap_cache() nesse caso resultará em uma acesso fora dos limites (out-of-bounds) ao array swapper_spaces[].

Valide o entry com non_swap_entry() antes de prosseguir.

2) Quando encontramos um valid swap entry no inode do shmem, a shadow entry no swapcache pode ainda não existir: a E/S de troca (swap IO) está em andamento e estamos antes da chamada __remove_mapping; as operações swapin, invalidação ou swapoff removeram a sombra do swapcache depois que vimos o entry de troca do shmem.

Isso enviará um NULL para workingset_test_recent(). Como esta última opera puramente sobre bits de ponteiro, não causará uma falha (crash) - node 0, ID memcg 0, timestamp de evicção 0, etc., são todos inputs válidos -, mas trata-se de um teste incorreto. Em teoria, isso poderia resultar em uma contagem falsa de "recentemente evitado" ("recently evicted").

Um falso positivo desse tipo não seria catastrófico. Mas para maior clareza do código e (futuro) robustez, seja explícito sobre este caso.

Interrompa a execução se get_shadow_from_swap_cache() retornar NULL.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Divulgação

17/05/2024

Moderação

aceite

Entrada

VDB-264931

CPE

pronto

EPSS

0.00646

KEV

não

Atividades

muito baixo

Fontes

Do you need the next level of professionalism?

Upgrade your account now!