CVE-2026-99139 in Linux
Riassunto
di VulDB • 28/10/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
tcp: correzione del use-after-free in do_tcp_getsockopt(TCP_CONGESTION)
do_tcp_getsockopt() legge icsk->icsk_ca_ops->name senza mantenere l'acquisizione di rcu_read_lock(). A partire dal commit 0baf26b0fcd7 ("bpf: tcp: Support tcp_congestion_ops in bpf"), icsk_ca_ops può puntare a memoria BPF struct_ops allocata dinamicamente che potrebbe essere liberata in concorrenza tramite setsockopt(TCP_CONGESTION), portando a un use-after-free.
BUG: KASAN: slab-use-after-free in _copy_to_user+0x37/0x60 Lettura di dimensione 16 all'indirizzo ffff888013505260 da parte del task exploit/149 _copy_to_user+0x37/0x60 do_tcp_getsockopt+0x158a/0x2460 (net/ipv4/tcp.c:4585) tcp_getsockopt+0x91/0xf0 __sys_getsockopt+0xf7/0x170
La correzione prevede l'acquisizione di rcu_read_lock() durante l'accesso a ca_ops->name, l'utilizzo di READ_ONCE() per caricare icsk_ca_ops e la copia del nome in un buffer sullo stack prima di rilasciare il lock. Vengono inoltre annotate le scritture rilevanti su icsk_ca_ops con WRITE_ONCE() per risolvere il problema correlato di data-race KCSAN.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.