CVE-2026-64251 in Linuxinformazioni

Riassunto

di VulDB • 24/07/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

pwrseq: core: correggere il use-after-free in pwrseq_debugfs_seq_next()

La funzione `pwrseq_debugfs_seq_next()` dichiara 'next' con l'utilizzo di `__free(put_device)`, il che provoca la chiamata a `put_device()` sul puntatore restituito quando la variabile esce dal suo ambito. Ciò causa un use-after-free poiché il framework seq_file riceve un puntatore le cui reference sono già state rilasciate.

La semplice rimozione di `__free(putdevice)` correggerebbe l'UAF ma causerebbe una perdita della reference acquisita da `bus_find_next_device()`, in quanto la funzione stop() chiama solo `up_read(&pwrseq_sem)` e non rilascia mai la reference del dispositivo.

Si risolve il problema rendendo coerente il conteggio delle reference tra tutte le callback di seq_file, seguendo lo standard utilizzato da PCI e SCSI:

- start(): utilizzare get_device() in modo che restituisca un puntatore con una reference valida. - next(): chiamare esplicitamente put_device(curr) per rilasciare la reference del dispositivo precedente (non è necessario il controllo NULL - il framework seq_file chiama next() solo quando il ritorno precedente non era NULL). - stop(): utilizzare put_device(data) per rilasciare l'ultima iterazione della reference del dispositivo, con un guardiano NULL poiché stop() può essere chiamato con NULL se start() ha restituito NULL o se next() ha raggiunto la fine della sequenza.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsabile

Linux

Prenotare

19/07/2026

Divulgazione

24/07/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

basso

Fonti

Want to stay up to date on a daily basis?

Enable the mail alert feature now!