CVE-2025-37795 in Linux
Zusammenfassung
von VulDB • 15.05.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
wifi: mac80211: Aktualisieren Sie den Control-Block-Schlüssel des SKB in ieee80211_tx_dequeue()
Der Control-Block-Schlüssel des ieee80211-SKB (gesetzt, wenn das SKB in die Warteschlange eingereiht wurde) könnte vor dem Aufruf von ieee80211_tx_dequeue() entfernt worden sein. ieee80211_tx_dequeue() hat bereits ieee80211_tx_h_select_key() aufgerufen, um den aktuellen Schlüssel zu erhalten, aber die letztere Funktion aktualisiert den Schlüssel im SKB-Control-Block nicht, falls dieser NULL ist. Da einige Treiber diesen Schlüssel tatsächlich in ihren TX-Callbacks verwenden (z. B. ath1{1,2}k_mac_op_tx()), kann dies zu einem Use-After-Free führen:
BUG: KASAN: slab-use-after-free in ath11k_mac_op_tx+0x590/0x61c Read of size 4 at addr ffffff803083c248 by task kworker/u16:4/1440
CPU: 3 UID: 0 PID: 1440 Comm: kworker/u16:4 Not tainted 6.13.0-ge128f627f404 #2 Hardware name: HW (DT) Workqueue: bat_events batadv_send_outstanding_bcast_packet Call trace: show_stack+0x14/0x1c (C) dump_stack_lvl+0x58/0x74 print_report+0x164/0x4c0 kasan_report+0xac/0xe8 __asan_report_load4_noabort+0x1c/0x24 ath11k_mac_op_tx+0x590/0x61c ieee80211_handle_wake_tx_queue+0x12c/0x1c8 ieee80211_queue_skb+0xdcc/0x1b4c ieee80211_tx+0x1ec/0x2bc ieee80211_xmit+0x224/0x324 __ieee80211_subif_start_xmit+0x85c/0xcf8 ieee80211_subif_start_xmit+0xc0/0xec4 dev_hard_start_xmit+0xf4/0x28c __dev_queue_xmit+0x730/0x1000 dev_queue_xmit+0x1c/0x2c batadv_send_outstanding_bcast_packet+0x130/0x23c process_one_work+0x330/0x634 worker_thread+0x320/0x3e4 kthread+0x104/0x11c ret_from_fork+0x10/0x20
Allocated by task 1494: kasan_save_stack+0x28/0x4c kasan_save_track+0x1c/0x40 kasan_save_alloc_info+0x3c/0x4c __kasan_kmalloc+0xac/0xb0 __kmalloc_noprof+0x1b4/0x380 ieee80211_key_alloc+0x3c/0xb64 ieee80211_add_key+0x1b4/0x71c nl80211_new_key+0x2b4/0x5d8 genl_family_rcv_msg_doit+0x198/0x240
Freed by task 1494: kasan_save_stack+0x28/0x4c kasan_save_track+0x1c/0x40 kasan_save_free_info+0x48/0x94 __kasan_slab_free+0x48/0x60 kfree+0xc8/0x31c kfree_sensitive+0x70/0x80 ieee80211_key_free_common+0x10c/0x174 ieee80211_free_keys+0x188/0x46c ieee80211_stop_mesh+0x70/0x2cc ieee80211_leave_mesh+0x1c/0x60 cfg80211_leave_mesh+0xe0/0x280 cfg80211_leave+0x1e0/0x244
Reset SKB control block key before calling ieee80211_tx_h_select_key() to avoid that.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.