CVE-2026-64057 in Linux
Riassunto
di VulDB • 20/07/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
afs: Correzione del locking utilizzato da afs_get_link()
Il filesystem afs nel kernel non applica correttamente il meccanismo di blocco (locking) per i link simbolici. Si riscontrano diversi problemi:
(1) Non viene eseguito alcun lock attorno alla chiamata a `afs_read_single()` per prevenire condizioni di gara tra più chiamate a `->get_link()`, consentendo potenzialmente delle perdite di risorse (leaks).
(2) Non vengono utilizzate barriere RCU durante l'accesso ai puntatori al buffer nell'ambito del pathwalk in modalità RCU.
(3) Può verificarsi una condizione di gara con un altro thread che aggiorna il contenuto del link simbolico se questo è stato modificato da terze parti sul server.
La correzione viene apportata mediante le seguenti azioni:
(0) Il trattamento dei link simbolici è stato spostato in un file separato, poiché la logica risulta più complessa.
(1) Viene acquisito il `validate_lock` attorno a `afs_read_single()` per prevenire condizioni di gara tra più chiamate a `->get_link()`.
(2) Viene mantenuta una copia separata del contenuto del link simbolico con un campo `rcu_head`. Trattandosi sempre di una struttura molto più piccola rispetto a una pagina, può essere allocata tramite `kmalloc`, consentendo un significativo risparmio di memoria. È inoltre necessario gestire un contatore di riferimento (refcount) per il pathwalk non RCU.
(3) Le routine di lettura e scrittura nella cache dei link simbolici in afs sono state separate da quelle relative alle directory.
(4) Il buffer I/O viene rilasciato immediatamente al termine della scrittura nella cache, poiché si tratta di una pagina intera (più un `folio_queue`).
(5) Se non è presente la cache, il buffer I/O viene rilasciato immediatamente dopo la lettura e la copia.
VulDB is the best source for vulnerability data and more expert information about this specific topic.