Skip to content
OpenAdvisories
Unscored CVE-2023-53641 EUVD-2025-31996GHSA-hh9m-7vg3-wpg4

wifi: ath9k: hif_usb: fix memory leak of remain_skbs

Published Oct 7, 2025 · Updated Nov 5, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.15 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.4 Package: linux-aws-5.8 Package: linux-aws-6.2 Package: linux-aws-6.5 Package: linux-aws-fips Package: linux-aws-hwe Package: linux-azure Package: linux-azure-4.15 Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.15 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.4 Package: linux-azure-5.8 Package: linux-azure-6.11 Package: linux-azure-6.2 Package: linux-azure-6.5 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.2 Package: linux-azure-fips Package: linux-bluefield Package: linux-fips Package: linux-gcp Package: linux-gcp-4.15 Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.15 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.4 Package: linux-gcp-5.8 Package: linux-gcp-6.11 Package: linux-gcp-6.2 Package: linux-gcp-6.5 Package: linux-gcp-fips Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop Package: linux-gkeop-5.15 Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.15 Package: linux-hwe-5.19 Package: linux-hwe-5.4 Package: linux-hwe-5.8 Package: linux-hwe-6.11 Package: linux-hwe-6.2 Package: linux-hwe-6.5 Package: linux-hwe-edge Package: linux-ibm Package: linux-ibm-5.15 Package: linux-ibm-5.4 Package: linux-intel Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-intel-iotg Package: linux-intel-iotg-5.15 Package: linux-iot Package: linux-kvm Package: linux-lowlatency Package: linux-lowlatency-hwe-5.15 Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.11 Package: linux-lowlatency-hwe-6.2 Package: linux-lowlatency-hwe-6.5 Package: linux-lts-xenial Package: linux-nvidia Package: linux-nvidia-6.2 Package: linux-nvidia-6.5 Package: linux-nvidia-tegra Package: linux-nvidia-tegra-5.15 Package: linux-nvidia-tegra-igx Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oem-6.11 Package: linux-oem-6.5 Package: linux-oem-6.8 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.15 Package: linux-oracle-5.3 Package: linux-oracle-5.4 Package: linux-oracle-5.8 Package: linux-oracle-6.5 Package: linux-raspi Package: linux-raspi-5.4 Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.15 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-riscv-6.5 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-starfive-6.5 Package: linux-vmware Package: linux-xilinx-zynqmp Platform: Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

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

wifi: ath9k: hif_usb: fix memory leak of remain_skbs

hif_dev->remain_skb is allocated and used exclusively in
ath9k_hif_usb_rx_stream(). It is implied that an allocated remain_skb is
processed and subsequently freed (in error paths) only during the next
call of ath9k_hif_usb_rx_stream().

So, if the urbs are deallocated between those two calls due to the device
deinitialization or suspend, it is possible that ath9k_hif_usb_rx_stream()
is not called next time and the allocated remain_skb is leaked. Our local
Syzkaller instance was able to trigger that.

remain_skb makes sense when receiving two consecutive urbs which are
logically linked together, i.e. a specific data field from the first skb
indicates a cached skb to be allocated, memcpy'd with some data and
subsequently processed in the next call to ath9k_hif_usb_rx_stream(). Urbs
deallocation supposedly makes that link irrelevant so we need to free the
cached skb in those cases.

Fix the leak by introducing a function to explicitly free remain_skb (if
it is not NULL) when the rx urbs have been deallocated. remain_skb is NULL
when it has not been allocated at all (hif_dev struct is kzalloced) or
when it has been processed in next call to ath9k_hif_usb_rx_stream().

Found by Linux Verification Center (linuxtesting.org) with Syzkaller.

Affected products

VendorProductAffectedFixed
Linux Linux 2.6.35 4.19.283

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 linux 6.3.7-1 —
Debian 13 linux 6.3.7-1 —
Debian 12 linux 6.1.37-1 —
ReleasePackageFixed inAdvisory
Ubuntu Nvidia-BlueField 22.04 LTS linux-bluefield 5.15.0-1022.24 —
Ubuntu 24.04 LTS linux-intel +9 No fix yet —
Ubuntu 22.04 LTS linux 5.15.0-79.86 —
Ubuntu 22.04 LTS linux-aws 5.15.0-1042.47 —
Ubuntu 22.04 LTS linux-azure 5.15.0-1045.52 —
Ubuntu 22.04 LTS linux-azure-fde 5.15.0-1045.52.1 —
Ubuntu 22.04 LTS linux-gcp 5.15.0-1039.47 —
Ubuntu 22.04 LTS linux-gke +1 5.15.0-1039.44 —
Ubuntu 22.04 LTS linux-gkeop 5.15.0-1025.30 —
Ubuntu 22.04 LTS linux-ibm +1 5.15.0-1035.38 —
Ubuntu 22.04 LTS linux-intel-iotg 5.15.0-1037.42 —
Ubuntu 22.04 LTS linux-lowlatency 5.15.0-79.88 —
Ubuntu 22.04 LTS linux-nvidia 5.15.0-1030.30 —
Ubuntu 22.04 LTS linux-nvidia-tegra 5.15.0-1016.16 —
Ubuntu 22.04 LTS linux-nvidia-tegra-igx 5.15.0-1002.2 —
Ubuntu 22.04 LTS linux-oracle 5.15.0-1040.46 —
Ubuntu 22.04 LTS linux-riscv +32 No fix yet —
Ubuntu 22.04 LTS linux-xilinx-zynqmp 5.15.0-1025.29 —
Ubuntu 20.04 LTS linux 5.4.0-162.179 —
Ubuntu 20.04 LTS linux-aws 5.4.0-1109.118 —
Ubuntu 20.04 LTS linux-aws-5.15 5.15.0-1041.46~20.04.1 —
Ubuntu 20.04 LTS linux-azure 5.4.0-1115.122 —
Ubuntu 20.04 LTS linux-azure-5.15 5.15.0-1045.52~20.04.1 —
Ubuntu 20.04 LTS linux-bluefield 5.4.0-1070.76 —
Ubuntu 20.04 LTS linux-gcp 5.4.0-1112.121 —
Ubuntu 20.04 LTS linux-gcp-5.15 5.15.0-1039.47~20.04.1 —
Ubuntu 20.04 LTS linux-gke +28 No fix yet —
Ubuntu 20.04 LTS linux-hwe-5.15 5.15.0-79.86~20.04.2 —
Ubuntu 20.04 LTS linux-ibm 5.4.0-1056.61 —
Ubuntu 20.04 LTS linux-ibm-5.15 5.15.0-1036.39~20.04.1 —
Ubuntu 20.04 LTS linux-intel-iotg-5.15 5.15.0-1037.42~20.04.1 —
Ubuntu 20.04 LTS linux-iot 5.4.0-1021.22 —
Ubuntu 20.04 LTS linux-kvm 5.4.0-1098.104 —
Ubuntu 20.04 LTS linux-lowlatency-hwe-5.15 5.15.0-79.88~20.04.1 —
Ubuntu 20.04 LTS linux-nvidia-tegra-5.15 5.15.0-1016.16~20.04.1 —
Ubuntu 20.04 LTS linux-oracle 5.4.0-1108.117 —
Ubuntu 20.04 LTS linux-oracle-5.15 5.15.0-1040.46~20.04.1 —
Ubuntu 20.04 LTS linux-raspi 5.4.0-1093.104 —
Ubuntu 20.04 LTS linux-riscv-5.15 5.15.0-1038.42~20.04.2 —
Ubuntu 20.04 LTS linux-xilinx-zynqmp 5.4.0-1029.33 —
Ubuntu 18.04 LTS linux-gcp +14 No fix yet —
Show 12 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Ubuntu Pro Realtime 22.04 LTS linux-intel-iot-realtime 5.15.0-1036.38 —
Ubuntu Pro Realtime 22.04 LTS linux-realtime 5.15.0-1043.48 —
Ubuntu Pro FIPS 20.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS 18.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS 16.04 LTS linux-fips No fix yet —
Ubuntu Pro FIPS-updates 20.04 LTS linux-aws-fips 5.4.0-1109.118+fips1 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-azure-fips 5.4.0-1115.122+fips1 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-fips 5.4.0-1084.93 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-gcp-fips 5.4.0-1112.121+fips1 —
Ubuntu Pro FIPS-updates 18.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS-updates 16.04 LTS linux-fips No fix yet —
Ubuntu Pro FIPS-preview 22.04 LTS linux-fips No fix yet —
Ubuntu Pro 18.04 LTS linux +5 No fix yet —
Ubuntu Pro 18.04 LTS linux-aws-5.4 5.4.0-1109.118~18.04.1 —
Ubuntu Pro 18.04 LTS linux-azure-5.4 5.4.0-1115.122~18.04.1 —
Ubuntu Pro 18.04 LTS linux-gcp-5.4 5.4.0-1112.121~18.04.1 —
Ubuntu Pro 18.04 LTS linux-hwe-5.4 5.4.0-162.179~18.04.1 —
Ubuntu Pro 18.04 LTS linux-ibm-5.4 5.4.0-1056.61~18.04.1 —
Ubuntu Pro 18.04 LTS linux-oracle-5.4 5.4.0-1108.117~18.04.1 —
Ubuntu Pro 18.04 LTS linux-raspi-5.4 5.4.0-1093.104~18.04.1 —
Ubuntu Pro 16.04 LTS linux +7 No fix yet —
Ubuntu Pro 14.04 LTS linux +3 No fix yet —
ReleasePackageFixed inAdvisory
RHEL 9 bpftool 7.2.0-362.8.1.el9_3 RHSA-2023:6583
RHEL 9 rv +64 5.14.0-362.8.1.el9_3 RHSA-2023:6583
RHEL 8 perf +26 4.18.0-513.5.1.el8_9 RHSA-2023:7077
ReleasePackageFixed inAdvisory
SLES 15 SP5 kernel-64kb +6 5.14.21-150500.55.127.1 SUSE-SU-2025:4320-1
SLES 15 SP5 kernel-default-base 5.14.21-150500.55.127.1.150500.6.61.1 SUSE-SU-2025:4320-1
SLES 15 SP4 kernel-64kb +6 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1
SLES 15 SP4 kernel-default-base 5.14.21-150400.24.184.1.150400.24.94.2 SUSE-SU-2025:4111-1
SLES 12 SP5 kernel-syms +2 4.12.14-122.283.1 SUSE-SU-2025:4515-1
Show 12 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 15 SP5 kernel-default-base 5.14.21-150500.55.127.1.150500.6.61.1 SUSE-SU-2025:4320-1
SLES for SAP 15 SP5 kernel-docs +4 5.14.21-150500.55.127.1 SUSE-SU-2025:4320-1
SLES for SAP 15 SP4 kernel-default-base 5.14.21-150400.24.184.1.150400.24.94.2 SUSE-SU-2025:4111-1
SLES for SAP 15 SP4 kernel-docs +4 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1
SLE Micro 5.5 kernel-default-base 5.14.21-150500.55.127.1.150500.6.61.1 SUSE-SU-2025:4320-1
SLE Micro 5.5 kernel-rt +1 5.14.21-150500.13.112.1 SUSE-SU-2025:4149-1
SLE Micro 5.5 kernel-source +1 5.14.21-150500.55.127.1 SUSE-SU-2025:4320-1
SLE Micro 5.4 kernel-default 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1
SLE Micro 5.4 kernel-default-base 5.14.21-150400.24.184.1.150400.24.94.2 SUSE-SU-2025:4111-1
SLE Micro 5.4 kernel-rt +1 5.14.21-150400.15.136.1 SUSE-SU-2025:4139-1
SLE Micro 5.3 kernel-default 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1
SLE Micro 5.3 kernel-default-base 5.14.21-150400.24.184.1.150400.24.94.2 SUSE-SU-2025:4111-1
SLE Micro 5.3 kernel-rt +1 5.14.21-150400.15.136.1 SUSE-SU-2025:4139-1
SLE Live Patching 15 SP5 kernel-default 5.14.21-150500.55.127.1 SUSE-SU-2025:4320-1
SLE Live Patching 15 SP5 kernel-livepatch-SLE15-SP5_Update_32 1-150500.11.3.1 SUSE-SU-2025:4320-1
SLE Live Patching 15 SP4 kernel-default 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1
SLE Live Patching 15 SP4 kernel-livepatch-SLE15-SP4_Update_46 1-150400.9.5.1 SUSE-SU-2025:4111-1
SLE Live Patching 12 SP5 kernel-default 4.12.14-122.283.1 SUSE-SU-2025:4515-1
SLE Live Patching 12 SP5 kgraft-patch-SLE12-SP5_Update_75 1-8.3.1 SUSE-SU-2025:4515-1
SLE HPC 15 SP5 kernel-64kb +5 5.14.21-150500.55.127.1 SUSE-SU-2025:4320-1
SLE HPC 15 SP5 kernel-default-base 5.14.21-150500.55.127.1.150500.6.61.1 SUSE-SU-2025:4320-1
SLE HPC 15 SP4 kernel-64kb +5 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1
SLE HPC 15 SP4 kernel-default-base 5.14.21-150400.24.184.1.150400.24.94.2 SUSE-SU-2025:4111-1
SUSE Manager Server LTS 4.3 kernel-default-base 5.14.21-150400.24.184.1.150400.24.94.2 SUSE-SU-2025:4111-1
SUSE Manager Server LTS 4.3 kernel-syms +3 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1
SUSE Manager Proxy LTS 4.3 kernel-default-base 5.14.21-150400.24.184.1.150400.24.94.2 SUSE-SU-2025:4111-1
SUSE Manager Proxy LTS 4.3 kernel-syms +2 5.14.21-150400.24.184.1 SUSE-SU-2025:4111-1

Advisories 9

References