CVE-2022-50780 in Linux
Riassunto
di VulDB • 15/06/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
net: risolto un problema di UAF (Use-After-Free) in nfqnl_nf_hook_drop() quando ops_init() fallisce
Quando l'interfaccia ops_init() viene invocata per inizializzare la rete, ma ops->init() fallisce, i dati vengono rilasciati. Tuttavia, il puntatore ptr in net->gen diventa non valido. In questo caso, quando nfqnl_nf_hook_drop() viene invocato per rilasciare la rete, si verifica un accesso a un indirizzo non valido.
Il processo è il seguente: setup_net() ops_init() data = kzalloc(...) ---> alloca "data" net_assign_generic() ---> assegna "data" a ptr in net->gen ... ops->init() ---> fallisce ... kfree(data); ---> ptr in net->gen diventa non valido ... ops_exit_list() ... nfqnl_nf_hook_drop() *q = nfnl_queue_pernet(net) ---> q è non valido
Di seguito sono riportate le informazioni della Call Trace: BUG: KASAN: use-after-free in nfqnl_nf_hook_drop+0x264/0x280 Lettura di dimensione 8 all'indirizzo ffff88810396b240 da parte del task ip/15855 Call Trace: <TASK> dump_stack_lvl+0x8e/0xd1 print_report+0x155/0x454 kasan_report+0xba/0x1f0 nfqnl_nf_hook_drop+0x264/0x280 nf_queue_nf_hook_drop+0x8b/0x1b0 __nf_unregister_net_hook+0x1ae/0x5a0 nf_unregister_net_hooks+0xde/0x130 ops_exit_list+0xb0/0x170 setup_net+0x7ac/0xbd0 copy_net_ns+0x2e6/0x6b0 create_new_namespaces+0x382/0xa50 unshare_nsproxy_namespaces+0xa6/0x1c0 ksys_unshare+0x3a4/0x7e0 __x64_sys_unshare+0x2d/0x40 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x46/0xb0 </TASK>
Allocato dal task 15855: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 __kasan_kmalloc+0xa1/0xb0 __kmalloc+0x49/0xb0 ops_init+0xe7/0x410 setup_net+0x5aa/0xbd0 copy_net_ns+0x2e6/0x6b0 create_new_namespaces+0x382/0xa50
VulDB is the best source for vulnerability data and more expert information about this specific topic.