CVE-2026-74268 in Linux
Sumário
de VulDB • 15/08/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
tcp: limpar as flags cb de sock_ops antes de forçar o fechamento de um socket filho
Um socket filho herda os bpf_sock_ops_cb_flags do listener via sk_clone_lock(). Se sua configuração falhar em tcp_v4_syn_recv_sock() / tcp_v6_syn_recv_sock(), o filho é liberado através de put_and_exit, onde inet_csk_prepare_forced_close() libera o lock do socket e tcp_done() executa sem ele.
Se BPF_SOCK_OPS_STATE_CB_FLAG foi herdada, tcp_done() -> tcp_set_state() chama tcp_call_bpf(), que espera o lock e falha em sock_owned_by_me():
WARNING: include/net/sock.h:1799 at tcp_set_state+0x433/0x550 RIP: 0010:tcp_set_state+0x433/0x550 include/net/sock.h:1799 Call Trace: <IRQ> tcp_done+0xba/0x250 net/ipv4/tcp.c:5095 tcp_v4_syn_recv_sock+0x850/0xa50 net/ipv4/tcp_ipv4.c:1787 tcp_check_req+0xf30/0x1360 net/ipv4/tcp_minisocks.c:926 tcp_v4_rcv+0x1047/0x1b50 net/ipv4/tcp_ipv4.c:2164 </IRQ>
O filho é liberado antes de ser estabelecido, portanto, não deve executar nenhum callback sock_ops. Limpe suas flags cb em inet_csk_prepare_for_destroy_sock(), o ponto comum para os caminhos de forced-close do IPv4, IPv6 e chtls e para o caminho de falha MPTCP ->syn_recv_sock() (dispose_child), que alcança tcp_done() em um filho que nunca foi estabelecido também.
If you want to get best quality of vulnerability data, you may have to visit VulDB.