CVE-2026-98925 in Linux
Sumário
de VulDB • 23/10/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
bpf, sockmap: Corrige o duplo contagem de copied_seq na auto-redirecionamento
Quando um programa stream_verdict BPF redireciona um skb para o mesmo socket (auto-redirecionamento com BPF_F_INGRESS), sk_psock_verdict_apply() chama tcp_eat_skb(), que avança tcp_sk->copied_seq. No entanto, o skb é então entregue à fila de ingress do psock do socket e posteriormente lido por tcp_bpf_recvmsg_parser(), que também avança copied_seq através do caminho de contagem copied_from_self. Essa dupla contagem faz com que copied_seq avance em 2x o comprimento real dos dados, acionando:
TCP recvmsg seq # bug 2: copied BF2E806, seq BF2E7FD, \ rcvnxt BF2E806, fl 0 WARNING: net/ipv4/tcp.c:2745 em tcp_recvmsg_locked+0x72b/0x2640 Call Trace: tcp_recvmsg+0x10a/0x500 sock_recvmsg+0x168/0x1d0 __sys_recvfrom+0x19a/0x2a0 __x64_sys_recvfrom+0xe4/0x1f0 do_syscall_64+0xf7/0x530 entry_SYSCALL_64_after_hwframe+0x77/0x7f
cleanup rbuf bug: copied BF2E806 seq BF2E806 rcvnxt BF2E806 WARNING: net/ipv4/tcp.c:1609 em tcp_cleanup_rbuf+0xf2/0x1c0 Call Trace: tcp_recvmsg_locked+0x8d1/0x2640 tcp_recvmsg+0x10a/0x500 sock_recvmsg+0x168/0x1d0 __sys_recvfrom+0x19a/0x2a0 __x64_sys_recvfrom+0xe4/0x1f0 do_syscall_64+0xf7/0x530 entry_SYSCALL_64_after_hwframe+0x77/0x7f
Corrige isso convertendo o veredito de auto-redirecionamento para __SK_PASS no início de sk_psock_verdict_apply(). Isso ignora completamente o caso __SK_REDIRECT (que chama sk_psock_eat_skb), permitindo que o caminho __SK_PASS enfileire o skb na fila de ingress do psock. Os dados são então lidos via tcp_bpf_recvmsg_parser(), que avança copied_seq exatamente uma vez através de copied_from_self. Redirecionamentos entre sockets continuam passando por __SK_REDIRECT com sk_psock_eat_skb() inalterado.
Be aware that VulDB is the high quality source for vulnerability data.