CVE-2026-68363: wifi: ath9k: hif_usb: don't dereference hif_dev after re-arming firmware request

Published Aug 10, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

wifi: ath9k: hifusb: don't dereference hifdev after re-arming firmware request

ath9khifrequestfirmware() re-arms an asynchronous firmware load via requestfirmwarenowait(), passing hifdev as the completion context, and then still dereferences hifdev:

devinfo(&hifdev->udev->dev, "ath9khtc: Firmware %s requested\n", hifdev->fwname);

The re-armed callback ath9khifusbfirmwarecb() runs on the "events" workqueue and, when the firmware is missing, walks the retry chain into ath9khifusbfirmwarefail() -> completeall(&hifdev->fwdone). That releases the waitforcompletion(&hifdev->fwdone) in a concurrent ath9khifusbdisconnect(), which then kfree()s hifdev. The trailing devinfo() in the frame that re-armed the request can therefore read freed memory (hifdev->udev, the first field of struct hifdeviceusb):

BUG: KASAN: slab-use-after-free in ath9khifrequestfirmware Read of size 8 ... by task kworker/... ath9khifrequestfirmware ath9khifusbfirmwarecb drivers/net/wireless/ath/ath9k/hifusb.c:1247 requestfirmwareworkfunc Allocated by ...: ath9khifusbprobe drivers/net/wireless/ath/ath9k/hifusb.c Freed by ...: ath9khifusbdisconnect -> kfree drivers/net/wireless/ath/ath9k/hifusb.c

The fwdone barrier only makes disconnect wait for the firmware chain to terminate; it does not protect the outer ath9khifrequestfirmware() frame that re-armed the request and keeps touching hifdev afterwards.

Drop the post-request devinfo(): it is the only use of hifdev after the async request is armed, and it is purely informational (the deverr() on the failure path runs only when requestfirmwarenowait() did not arm a callback, so hifdev is still alive there).

This was first reported by syzbot as a single, non-reproduced crash that was later auto-obsoleted, and was independently rediscovered by the reFuzz fuzzer, which produced a C reproducer (USB-gadget connect/disconnect of an ath9khtc device whose firmware download fails). The vulnerable code is unchanged and still present in v7.1-rc6, where the slab-use-after-free reproduces under KASAN once the (sub-microsecond) race window is widened.

Affected Software

1 affected component
Linux Linux kernel>=v7.1-rc6<=v7.1-rc6

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Apply the upstream fix described in the resolved Linux kernel change: drop the post-request dev_info() in ath9k_hif_request_firmware because the re-armed asynchronous firmware request can run on a path (e.g., ath9k_hif_usb_disconnect) that kfree()s hif_dev, and the re-armed callback/DevInfo path may read freed memory when firmware load fails.

    Linux kernel ath9k_hif_usb.c callback handling (hif_dev lifetime) = Do not dereference hif_dev after re-arming the asynchronous firmware request in ath9k_hif_request_firmware (remove the post-request dev_info() use of hif_dev after it can be freed on failure/disconnect)

Event History

Aug 10, 2026
CVE Published
via MITRE·12:03 PM
Data Sourced
via MITRE·12:03 PM
Description
Data Sourced
via NVD·01:20 PM
Description
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-68363?

CVE-2026-68363 has been rated with a risk score of 37.

2

How do I fix CVE-2026-68363?

To fix CVE-2026-68363, ensure that you update to the latest patched version of the Linux kernel that addresses this vulnerability.

3

What causes CVE-2026-68363?

CVE-2026-68363 is caused by a use-after-free vulnerability in the ath9k driver within the Linux kernel.

4

Which software is affected by CVE-2026-68363?

CVE-2026-68363 affects the Linux kernel's ath9k driver when handling asynchronous firmware requests.

5

When was CVE-2026-68363 published?

CVE-2026-68363 was published on August 10, 2026.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203