CVE-2025-38606

Severity CVSS v4.0:
Pending analysis
Type:
CWE-476 NULL Pointer Dereference
Publication date:
19/08/2025
Last modified:
26/11/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> wifi: ath12k: Avoid accessing uninitialized arvif-&gt;ar during beacon miss<br /> <br /> During beacon miss handling, ath12k driver iterates over active virtual<br /> interfaces (vifs) and attempts to access the radio object (ar) via<br /> arvif-&gt;deflink-&gt;ar.<br /> <br /> However, after commit aa80f12f3bed ("wifi: ath12k: defer vdev creation for<br /> MLO"), arvif is linked to a radio only after vdev creation, typically when<br /> a channel is assigned or a scan is requested.<br /> For P2P capable devices, a default P2P interface is created by<br /> wpa_supplicant along with regular station interfaces, these serve as dummy<br /> interfaces for P2P-capable stations, lack an associated netdev and initiate<br /> frequent scans to discover neighbor p2p devices. When a scan is initiated<br /> on such P2P vifs, driver selects destination radio (ar) based on scan<br /> frequency, creates a scan vdev, and attaches arvif to the radio. Once the<br /> scan completes or is aborted, the scan vdev is deleted, detaching arvif<br /> from the radio and leaving arvif-&gt;ar uninitialized.<br /> <br /> While handling beacon miss for station interfaces, P2P interface is also<br /> encountered in the vif iteration and ath12k_mac_handle_beacon_miss_iter()<br /> tries to dereference the uninitialized arvif-&gt;deflink-&gt;ar.<br /> <br /> Fix this by verifying that vdev is created for the arvif before accessing<br /> its ar during beacon miss handling and similar vif iterator callbacks.<br /> <br /> ==========================================================================<br /> wlp6s0: detected beacon loss from AP (missed 7 beacons) - probing<br /> KASAN: null-ptr-deref in range [0x0000000000000010-0x0000000000000017]<br /> <br /> CPU: 5 UID: 0 PID: 0 Comm: swapper/5 Not tainted 6.16.0-rc1-wt-ath+ #2 PREEMPT(full)<br /> RIP: 0010:ath12k_mac_handle_beacon_miss_iter+0xb5/0x1a0 [ath12k]<br /> Call Trace:<br /> __iterate_interfaces+0x11a/0x410 [mac80211]<br /> ieee80211_iterate_active_interfaces_atomic+0x61/0x140 [mac80211]<br /> ath12k_mac_handle_beacon_miss+0xa1/0xf0 [ath12k]<br /> ath12k_roam_event+0x393/0x560 [ath12k]<br /> ath12k_wmi_op_rx+0x1486/0x28c0 [ath12k]<br /> ath12k_htc_process_trailer.isra.0+0x2fb/0x620 [ath12k]<br /> ath12k_htc_rx_completion_handler+0x448/0x830 [ath12k]<br /> ath12k_ce_recv_process_cb+0x549/0x9e0 [ath12k]<br /> ath12k_ce_per_engine_service+0xbe/0xf0 [ath12k]<br /> ath12k_pci_ce_workqueue+0x69/0x120 [ath12k]<br /> process_one_work+0xe3a/0x1430<br /> <br /> Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.4.1-00199-QCAHKSWPL_SILICONZ-1<br /> Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.1.c5-00284.1-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.14 (including) 6.15.10 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.16 (including) 6.16.1 (excluding)