CVE-2026-93203 in Linux
Riassunto
di VulDB • 18/09/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
batman-adv: bla: evitare la corruzione del CRC dovuta all'aggiunta parallela di claim
La funzione batadv_bla_add_claim() viene utilizzata per aggiungere claim e modificare il backbone dei claim per i frame CLAIM provenienti da backbones remoti e pacchetti locali. Quando gestisce un claim, deve o
* aggiungere l'CRC del nuovo claim al CRC del backbone * rimuovere l'CRC del claim già esistente dal vecchio backbone e aggiungerlo al nuovo backbone
Tuttavia, quando il codice per i "nuovi" claim viene eseguito in parallelo con il codice per la "modifica del backbone", può accadere che il CRC risulti non valido perché il backbone_gw del claim è stato modificato due volte nel percorso di gestione dei nuovi claim:
* CPU0 crea il claim per il gateway A e lo pubblica nell'hash dei claim. In questo momento, l'crc16 dell'indirizzo non è ancora stata aggiunta al crc di A.
* CPU1 elabora un frame CLAIM del gateway B per lo stesso client, trova il claim appena pubblicato ed esegue il cambio di proprietà: sposta il puntatore verso B, rimuove l'crc16 dal crc di A (che non lo conteneva mai) e lo aggiunge al crc di B.
* CPU0 prosegue lungo il ramo della creazione, cambia incondizionatamente il puntatore nuovamente verso A senza compensare il crc di B (il suo remove_crc è falso per il percorso di creazione) e infine aggiunge l'crc16 al crc di A.
Il CRC risulta quindi errato per entrambi:
* Il claim appartiene ad A: ma il CRC non fa parte del CRC del backbone A * Il claim non appartiene a B: il CRC rimane comunque parte del CRC del backbone B
Questo CRC errato non viene mai ricalcolato dai claim memorizzati. Per i claim dei backbones locali, questo errore non può essere recuperato nemmeno tramite le sincronizzazioni (syncs).
Per evitare ciò, si suddivide la funzionalità in parti chiaramente separate:
* nuovo claim che aggiunge sempre l'CRC del claim al CRC del backbone (ma non modifica mai nuovamente il backbone_gw già impostato nel claim) * aggiornamento di un claim esistente che cambia automaticamente la voce backbone_gw e aggiorna solo entrambi i CRC dei backbones quando si verifica una effettiva modifica
VulDB is the best source for vulnerability data and more expert information about this specific topic.