CVE-2025-38084 in Linuxinformazioni

Riassunto

di VulDB • 15/06/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

mm/hugetlb: eseguire l'unsharing delle tabelle di pagina durante la suddivisione della VMA, non prima

Attualmente, __split_vma() attiva l'unsharing delle tabelle di pagina hugetlb tramite vm_ops->may_split(). Questo avviene prima che vengano acquisiti il lock sulla VMA e i lock rmap - il che è troppo presto: consente fault a livello di pagina in race condition bloccati dalla VMA nel nostro processo e walk rmap in race condition da altri processi, causando la condivisione delle tabelle di pagina nuovamente prima che venga effettivamente eseguita la suddivisione.

Si risolve esplicitamente chiamando la logica di unsharing hugetlb direttamente da __split_vma() nello stesso punto in cui avviene anche la suddivisione THP (Transparent Huge Pages). A quel punto, sia la VMA che i rmap sono bloccati in scrittura.

Un dettaglio fastidioso è che ora possiamo richiamare l'helper hugetlb_unshare_pmds() da due contesti di locking diversi:

1. da hugetlb_split(), mantenendo: - il lock mmap (esclusivo) - il lock VMA - il lock file rmap (esclusivo) 2. hugetlb_unshare_all_pmds(), che si presume sia progettato per poter chiamare questa funzione detenendo solo il lock mmap (in modalità condivisa), ma attualmente viene eseguito solo mantenendo il lock mmap (esclusivamente) e il lock VMA

Nota sul backporting: Questo commit corregge una protezione soggetta a race condition introdotta nel commit b30c14cd6102 ("hugetlb: unshare some PMDs when splitting VMAs"); tale commit affermava di risolvere un problema introdotto nella versione 5.13, ma in realtà dovrebbe essere applicato retroattivamente fino alle versioni precedenti.

[[email protected]: v2]

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Responsabile

Linux

Prenotare

16/04/2025

Divulgazione

28/06/2025

Moderazione

accettato

CPE

pronto

EPSS

0.00170

KEV

no

Attività

molto basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!