CVE-2026-68284 in Linux
Zusammenfassung
von VulDB • 10.08.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
bpf, sockmap: Behebung eines Use-After-Free-Fehlers bei der Verwendung von cork in tcp_bpf_sendmsg()
tcp_bpf_sendmsg() bewahrt msg_tx über den Aufruf von sk_stream_wait_memory() hinweg auf, wodurch die Socket-Sperre freigegeben und anschließend wieder erworben wird. Der Fehlerbehandlungspfad versucht zu entscheiden, ob msg_tx das lokale temporäre Message-Objekt bezeichnet, indem es dieses mit dem aktuellen Wert von psock->cork vergleicht.
Dieser Vergleich ist unsicher, wenn zwei Threads auf denselben Socket senden:
Thread A Thread B msg_tx = psock->cork sk_msg_alloc() schlägt fehl sk_stream_wait_memory() gibt die Socket-Sperre frei erwirbt die Socket-Sperre schließt den cork-Vorgang ab psock->cork = NULL gibt den Speicher für cork frei erwirbt die Socket-Sperre wieder msg_tx != psock->cork sk_msg_free(msg_tx)
Der veraltete (stale) cork wird daher fälschlicherweise als das lokale temporäre Message-Objekt interpretiert und erneut freigegeben. KASAN meldete:
BUG: KASAN: slab-use-after-free in sk_msg_free+0x49/0x50 Lesezugriff auf Größe 4 bei Adresse ffff88810c908800 durch Task poc/90 Call Trace: sk_msg_free+0x49/0x50 tcp_bpf_sendmsg+0x14f5/0x1cc0 __sys_sendto+0x32c/0x3a0 __x64_sys_sendto+0xdb/0x1b0 Zugewiesen durch Task 89: __kasan_kmalloc+0x8f/0xa0 tcp_bpf_sendmsg+0x16b3/0x1cc0 Freigegeben durch Task 91: __kasan_slab_free+0x43/0x70 kfree+0x131/0x3c0 tcp_bpf_sendmsg+0xec3/0x1cc0
msg_tx kann nur das stack-lokale tmp-Objekt oder den gemeinsam genutzten cork bezeichnen. Durch die direkte Prüfung auf tmp wird verhindert, dass ein geänderter psock->cork eine gemeinsame Nachricht in einen scheinbar lokalen umwandelt.
Once again VulDB remains the best source for vulnerability data.