CVE-2022-50179

ath9k: fix use-after-free in ath9k_hif_usb_rx_cb

HIGH
7.8
CVSS Score
Published: June 18, 2025 at 11:03 AM UTC
Updated: June 17, 2026 at 05:22 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.8
Exploit prediction
EPSS 0.3%

Description

In the Linux kernel, the following vulnerability has been resolved: ath9k: fix use-after-free in ath9k_hif_usb_rx_cb Syzbot reported use-after-free Read in ath9k_hif_usb_rx_cb() [0]. The problem was in incorrect htc_handle->drv_priv initialization. Probable call trace which can trigger use-after-free: ath9k_htc_probe_device() /* htc_handle->drv_priv = priv; */ ath9k_htc_wait_for_target() <--- Failed ieee80211_free_hw() <--- priv pointer is freed <IRQ> ... ath9k_hif_usb_rx_cb() ath9k_hif_usb_rx_stream() RX_STAT_INC() <--- htc_handle->drv_priv access In order to not add fancy protection for drv_priv we can move htc_handle->drv_priv initialization at the end of the ath9k_htc_probe_device() and add helper macro to make all *_STAT_* macros NULL safe, since syzbot has reported related NULL deref in that macros [1]

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

2.6.35 ≤ v < 4.14.2912.6.35 ≤ v < 4.19.2562.6.35 ≤ v < 5.10.1372.6.35 ≤ v < 5.15.612.6.35 ≤ v < 5.18.182.6.35 ≤ v < 5.19.22.6.35 ≤ v < 5.4.2112.6.35 ≤ v < 6.04.15 ≤ v < 4.19.2564.20 ≤ v < 5.4.2115.11 ≤ v < 5.15.615.16 ≤ v < 5.18.185.19 ≤ v < 5.19.25.5 ≤ v < 5.10.1372.6.35fb9987d0f748c983bb795a86f47522313f701a08
Vendor states this is fixed in 03ca957c5f7b55660957eda20b5db4110319ac7a (fixed)
Vendor states this is fixed in 0ac4827f78c7ffe8eef074bc010e7e34bc22f533 (fixed)
Vendor states this is fixed in 62bc1ea5c7401d77eaf73d0c6a15f3d2e742856e (fixed)
Vendor states this is fixed in 6b14ab47937ba441e75e8dbb9fbfc9c55efa41c6 (fixed)
Vendor states this is fixed in ab7a0ddf5f1cdec63cb21840369873806fc36d80 (fixed)
Vendor states this is fixed in b66ebac40f64336ae2d053883bee85261060bd27 (fixed)
Vendor states this is fixed in e9e21206b8ea62220b486310c61277e7ebfe7cec (fixed)
Vendor states this is fixed in eccd7c3e2596b574241a7670b5b53f5322f470e5 (fixed)
Vendor states this is fixed in 2.6.35 (unaffected)
Vendor states this is fixed in 4.14.291 (unaffected)
Vendor states this is fixed in 4.19.256 (unaffected)
Vendor states this is fixed in 5.10.137 (unaffected)
Vendor states this is fixed in 5.15.61 (unaffected)
Vendor states this is fixed in 5.18.18 (unaffected)
Vendor states this is fixed in 5.19.2 (unaffected)
Vendor states this is fixed in 5.4.211 (unaffected)
Vendor states this is fixed in 6.0 (unaffected)

References (8)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/03ca957c5f7b55660957eda20b5db4110319ac7a
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/0ac4827f78c7ffe8eef074bc010e7e34bc22f533
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/62bc1ea5c7401d77eaf73d0c6a15f3d2e742856e
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/6b14ab47937ba441e75e8dbb9fbfc9c55efa41c6
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/ab7a0ddf5f1cdec63cb21840369873806fc36d80
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/b66ebac40f64336ae2d053883bee85261060bd27
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/e9e21206b8ea62220b486310c61277e7ebfe7cec
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/eccd7c3e2596b574241a7670b5b53f5322f470e5

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-416

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card