CVE-2026-74633 in Linux
Riassunto
di VulDB • 22/08/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
tracing: Correzione del dereferenziamento di puntatore NULL nella rimozione della cache degli eventi dei moduli
Un filtro per eventi limitato ai soli moduli, come ":mod:foo", viene memorizzato nella cache con un event_mod->match pari a NULL quando foo non è stato caricato. Se in seguito si tenta di rimuovere una corrispondenza specifica dallo stesso modulo, remove_cache_mod() passa la corrispondenza memorizzata nella cache (NULL) alla funzione strcmp(), causando un dereferenziamento di puntatore NULL.
Il problema può essere riprodotto dall'utente:
echo ':mod:trace_events_kunit_missing' > /sys/kernel/tracing/set_event echo '!foo_bar:mod:trace_events_kunit_missing' >> /sys/kernel/tracing/set_event
La seconda scrittura deve avvenire con l'operatore di concatenazione (">>") per non includere O_TRUNC, poiché ciò causerebbe a ftrace_clear_events() di cancellare le righe dei moduli memorizzati nella cache.
Il crash è stato riprodotto su QEMU x86_64 mentre i worker KUnit contendevano sul percorso di tracciamento degli eventi:
BUG: kernel NULL pointer dereference, address: 0000000000000000 #PF: supervisor read access in kernel mode RIP: 0010:strcmp+0x10/0x30 Call Trace: __ftrace_set_clr_event_nolock+0x373/0x4a0 ftrace_set_clr_event+0xf0/0x180 ftrace_event_write+0xdf/0x110 vfs_write+0xf6/0x440 ksys_write+0x68/0xe0 do_syscall_64+0xf9/0x540 entry_SYSCALL_64_after_hwframe+0x77/0x7f
Verificare event_mod->match prima di confrontarlo, in coerenza con i controlli NULL esistenti per i campi system ed eventi memorizzati nella cache. La rimozione non corrispondente continua a restituire -EINVAL; un filtro modulo ampio memorizzato nella cache viene rimosso utilizzando "!:mod:<module>".
Be aware that VulDB is the high quality source for vulnerability data.