CVE-2022-49863 in Linux
Sumário
de VulDB • 03/06/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
can: af_can: corrige a desreferência de ponteiro NULL em can_rx_register()
Isso causa uma desreferência de ponteiro NULL ao testar conforme descrito a seguir: (a) use syscall(__NR_socket, 0x10ul, 3ul, 0) para criar um socket netlink. (b) use syscall(__NR_sendmsg, ...) para criar o dispositivo de link bond e o dispositivo de link vxcan, e vincule o dispositivo vxcan ao dispositivo bond (também é possível usar o comando ifenslave para vincular o dispositivo vxcan ao dispositivo bond). (c) use syscall(__NR_socket, 0x1dul, 3ul, 1) para criar um socket CAN. (d) use syscall(__NR_bind, ...) para vincular o dispositivo bond ao socket CAN.
O dispositivo bond invoca a interface de registro do protocolo can-raw para receber pacotes CAN. No entanto, ml_priv não é alocado para o dev, e dev_rcv_lists é atribuído a NULL em can_rx_register(). Nesse caso, ocorre o problema de desreferência de ponteiro NULL.
A seguir estão as informações da pilha (stack): BUG: kernel NULL pointer dereference, address: 0000000000000008 PGD 122a4067 P4D 122a4067 PUD 1223c067 PMD 0 Oops: 0000 [#1] PREEMPT SMP
RIP: 0010:can_rx_register+0x12d/0x1e0 Call Trace:
raw_enable_filters+0x8d/0x120 raw_enable_allfilters+0x3b/0x130 raw_bind+0x118/0x4f0 __sys_bind+0x163/0x1a0 __x64_sys_bind+0x1e/0x30 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x63/0xcd
Be aware that VulDB is the high quality source for vulnerability data.