CVE-2026-98385
sched/cache: disaccoppia sched_cache_group da mm per correggere la UAF
- Pubblicato
- 12 ott 2026
- Aggiornato
- 24 ott 2026
- Assegnazione CNA
- Linux
- Evidenza osservata
- 4 nov 2026
CVSS primario
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HBasso · prossimi 30 giorni
- Percentile
- 7,3%
- Data del modello
- 4 nov 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
Nel kernel Linux è stata risolta la seguente vulnerabilità: sched/cache: disaccoppiare sched_cache_group da mm per correggere la UAF. Attualmente il raggruppamento della cache di scheduling avviene per mm e le statistiche di scheduling sched_cache_stat risiedono nella struttura mm. Questo lega il ciclo di vita delle statistiche di scheduling a mm. In account_mm_sched(), le statistiche di scheduling sono accessibili tramite task->mm->sc_stat. Tuttavia, un task può cambiare mm su una CPU mentre un'altra CPU sta eseguendo account_mm_sched(), e potrebbe accedere al vecchio mm che è stato liberato. Questo problema è stato rilevato durante l'esecuzione di test con KASAN da Hyunwoo: https://lore.kernel.org/lkml/apPb-Dr4nPYuHQOK@v4bel/ Invece di serializzare l'accesso a mm introducendo un'acquisizione aggiuntiva del lock rq nel percorso di liberazione di mm, estrarre sched_cache_stat da mm_struct, rinominarlo come sched_cache_group e gestirne il ciclo di vita separatamente da mm_struct con un proprio conteggio dei riferimenti. Questo ci consente, nella patch successiva, di accedere direttamente a sched_cache_group dal task e di aggiungere un refcount su sched_cache_group quando un task vi si collega. Ciò previene il problema di use after free quando si accede a un vecchio mm obsoleto e rilasciato e alla sua statistica della cache di scheduling mentre un task passa a un nuovo mm e account_mm_sched() viene eseguito altrove. L'altro vantaggio di questa ristrutturazione è che in futuro il raggruppamento dei task su una LLC avrà la flessibilità di essere associato a un raggruppamento definito dall'utente, oppure a cgroup, cookie group, numa_group o altri, invece che solo a un singolo spazio di indirizzi mm. Rinominare sched_cache_stat in sched_cache_group e trasformarlo in un oggetto con conteggio dei riferimenti allocato da mm_struct. Ora mm_struct mantiene un puntatore (sched_cache_grp) a questo oggetto invece di incorporarlo.
Fonti
Port ARM64 per Android del PoC ufficiale per CVE-2026-98385, una race condition nel sottosistema Scheduler del kernel che consente un'escalation locale dei privilegi con costanti di layout dell'heap hardcoded.
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.