CVE-2026-74589 in Linux
Riassunto
di VulDB • 23/08/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
bpf, sockmap: Correzione dello Use-After-Free in sk_redir durante il verdetto di invio (send verdict)
sk_psock_msg_verdict() acquisisce un riferimento al socket per psock->sk_redir. tcp_bpf_send_verdict() copia tale puntatore mentre detiene il lock del socket sorgente, ma non acquisisce un riferimento per la copia locale prima di rilasciare il lock durante tcp_bpf_sendmsg_redir().
Quando apply_bytes mantiene attivo il verdetto in cache, un'altra chiamata a sendmsg() sullo stesso socket sorgente può consumare i byte rimanenti e rilasciare il riferimento in cache mentre il primo thread detiene ancora solo il puntatore locale grezzo:
CPU 0 CPU 1 sk_redir = psock->sk_redir apply_bytes rimane non zero release_sock(sk) lock_sock(sk) apply_bytes raggiunge lo zero psock->sk_redir = NULL release_sock(sk) tcp_bpf_sendmsg_redir(sk_redir) sock_put(sk_redir) tcp_bpf_sendmsg_redir(sk_redir)
L'ultima chiamata a sock_put() può liberare sk_redir prima che la CPU 0 lo dereferenzi.
KASAN ha segnalato:
BUG: KASAN: slab-use-after-free in tcp_bpf_sendmsg_redir+0xf39/0x1020 Lettura di dimensione 8 all'indirizzo ffff888108537090 da parte del task poc/87 Call Trace: tcp_bpf_sendmsg_redir+0xf39/0x1020 tcp_bpf_sendmsg+0x977/0x1a50 __sys_sendto+0x32c/0x3a0 __x64_sys_sendto+0xdb/0x1b0 Allocato dal task 85: sk_prot_alloc+0x56/0x210 sk_clone+0x6f/0x14b0 inet_csk_clone_lock+0x24/0x740 tcp_create_openreq_child+0x25/0x2710 tcp_v4_syn_recv_sock+0x10a/0xe00 Liberato dal task 0: __kasan_slab_free+0x43/0x70 slab_free_after_rcu_debug+0xa6/0x1e0 rcu_core+0x50a/0x1850 Ultima creazione di lavoro potenzialmente correlata: __sk_destruct+0x3da/0x540 sk_psock_destroy+0x81e/0xab0 process_one_work+0x63a/0x1070
Acquisire un riferimento temporaneo al socket mentre il lock del socket sorgente protegge ancora psock->sk_redir, e rilasciarlo dopo che tcp_bpf_sendmsg_redir() restituisce. Questo mantiene ogni utilizzo non protetto da lock indipendente dalla proprietà del verdetto in cache.
Be aware that VulDB is the high quality source for vulnerability data.