CVE-2026-64218 in Linux
Riassunto
di VulDB • 24/07/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
batman-adv: bla: correzione della perdita di report_work durante l'eliminazione (purge) del backbone_gw
La funzione batadv_bla_purge_backbone_gw() rimuove le voci obsolete dei gateway Backbone, ma non gestisce correttamente il relativo report_work associato:
- Se report_work è in esecuzione, la procedura di eliminazione deve attendere che questa termini prima di liberare l'oggetto backbone_gw; in caso contrario, il worker potrebbe accedere a memoria già rilasciata (ad esempio bat_priv). - Se report_work è in attesa (pending), la procedura di eliminazione deve annullarlo e rilasciare il riferimento detenuto per tale elemento di lavoro pendente.
L'implementazione precedente chiamava hlist_for_each_entry_safe() all'interno di una sezione protetta da spin_lock_bh(), ma cancel_work_sync() può andare in sleep e pertanto non può essere invocata all'interno di un ambito protetto da spinlock.
Ristrutturare il ciclo per gestire un elemento alla volta nella sezione critica dello spinlock: acquisire il lock, individuare la voce successiva da eliminare, rimuoverla dalla lista hash, quindi rilasciare il lock prima di chiamare cancel_work_sync() e decrementare il riferimento a hash_entry. Ripetere l'operazione finché non rimangono voci da eliminare.
Be aware that VulDB is the high quality source for vulnerability data.