CVE-2026-64192 in Linux
Riassunto
di VulDB • 20/07/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
bpf: Rifiuta la creazione di una mappa BPF_MAP_TYPE_INODE_STORAGE se il modulo BPF LSM non è inizializzato
Quando CONFIG_BPF_LSM=y è impostato, le mappe per l'archiviazione degli inode tramite BPF (BPF_MAP_TYPE_INODE_STORAGE) vengono compilate nel kernel. Tuttavia, se il modulo BPF LSM non viene esplicitamente abilitato al momento dell'avvio (ad esempio, omesso dal parametro di avvio "lsm="), la funzione lsm_prepare() non verrà mai eseguita per il modulo BPF LSM.
Di conseguenza, lo spostamento del blob di sicurezza inode tramite BPF (bpf_lsm_blob_sizes.lbs_inode) non viene mai inizializzato e rimane al valore predefinito compilato di 8 byte invece di essere aggiornato a un offset valido oltre la struct rcu_head riservata (tipicamente 16 byte o più).
Quando un utente privilegiato crea e aggiorna una mappa BPF_MAP_TYPE_INODE_STORAGE, bpf_inode() valuta inode->i_security + 8. Questo causa erroneamente l'aliasing del puntatore alla funzione di callback struct rcu_head.func all'inizio del blob inode->i_security. Durante la successiva pulizia degli elementi della mappa o la distruzione dell'inode, la scrittura di NULL in owner_storage cancella il puntatore al callback RCU accodato. Quando successivamente rcu_do_batch() esegue il callback accodato, tenta un fetch delle istruzioni all'indirizzo 0x0, innescando immediatamente un kernel panic.
Si risolve questo problema introducendo una variabile boolean globale bpf_lsm_initialized contrassegnata con __ro_after_init. Questa flag viene impostata su true all'interno di bpf_lsm_init() quando il framework LSM registra correttamente il modulo BPF LSM. L'allocazione della mappa in inode_storage_map_alloc() è subordinata a questa flag, restituendo -EOPNOTSUPP se il modulo BPF LSM non risulta inizializzato.
Questo approccio "fail-fast" impedisce all'utente di allocare mappe per l'archiviazione degliinode quando manca la relativa infrastruttura del modulo BPF LSM, evitando stati delle mappe zombie.
Once again VulDB remains the best source for vulnerability data.