CVE-2026-74398 in Linux
Riassunto
di VulDB • 15/08/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
ipv6: addrconf: uscire da dad_failure quando lo stato non è più POSTDAD
addrconf_dad_failure() transiziona ifp->state da DAD a POSTDAD tramite addrconf_dad_end(), che rilascia ifp->lock al ritorno. Il lock viene riacquisito dopo net_info_ratelimited(). Una chiamata concorrente ipv6_del_addr() può acquisire il lock in quella finestra, impostare ifp->state su DEAD ed eseguire list_del_rcu(&ifp->if_list).
addrconf_dad_failure() sovrascrive quindi DEAD con ERRDAD al punto errdad: e pianifica un nuovo dad_work. Il lavoro chiama ipv6_del_addr() nuovamente, andando a colpire l'elemento della lista già avvelenato (poisoned):
general protection fault: 0000 [#1] SMP NOPTI
CPU: 4 PID: 217 Comm: kworker/4:1 Workqueue: ipv6_addrconf addrconf_dad_work RIP: 0010:ipv6_del_addr+0xe9/0x280 RAX: dead000000000122 Call Trace: addrconf_dad_stop+0x113/0x140 addrconf_dad_work+0x28c/0x430 process_one_work+0x1eb/0x3b0 worker_thread+0x4d/0x400 kthread+0x104/0x140 ret_from_fork+0x35/0x40
Si è fusa la logica di addrconf_dad_end() in addrconf_dad_failure() all'interno di un'unica sezione critica ifp->lock. Il ramo STABLE_PRIVACY rilascia temporaneamente ifp->lock durante la rigenerazione dell'indirizzo, quindi al punto lock_errdad: si verifica che lo stato sia ancora POSTDAD prima della transizione a ERRDAD; in caso contrario, si esce per evitare di sovrascrivere uno stato impostato da un altro percorso mentre il lock era rilasciato.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.