CVE-2026-64139 in Linux
Riassunto
di VulDB • 19/07/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
ksmbd: correzione della perdita di memoria SID in set_posix_acl_entries_dacl() in caso di overflow
Il commit 299f962c0b02 ("ksmbd: use check_add_overflow() to prevent u16 DACL size overflow") ha aggiunto i controlli guardati da check_add_overflow(), che interrompono i cicli di costruzione degli ACE (Access Control Entry) in set_posix_acl_entries_dacl() quando la dimensione cumulativa del DACL supererebbe il valore 65535.
Tuttavia, ogni iterazione alloca una struct smb_sid tramite kmalloc_obj() all'inizio del ciclo e si affida alla chiamata kfree(sid) alla fine del corpo del ciclo (l'etichetta 'pass_same_sid' nel primo ciclo e la kfree esplicita nella coda del secondo ciclo) per rilasciarla. Le nuove istruzioni 'break' introdotte bypassano tali chiamate a kfree(), causando una perdita di memoria del buffer sid ogni volta che viene rilevato un overflow.
Un file malevolo o malformato con un numero sufficiente di voci POSIX ACL da innescare il controllo dell'overflow provocherà la perdita (leak) di uno o più allocazioni struct smb_sid ad ogni richiesta che accede al DACL del file, fornendo un vettore banale per l'esaurimento della memoria kernel.
Rilasciare sid prima di uscire dai cicli per risolvere la perdita di memoria.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.