CVE-2024-47718
Description
In the Linux kernel, the following vulnerability has been resolved:
wifi: rtw88: always wait for both firmware loading attempts
In 'rtw_wait_firmware_completion()', always wait for both (regular and wowlan) firmware loading attempts. Otherwise if 'rtw_usb_intf_init()' has failed in 'rtw_usb_probe()', 'rtw_usb_disconnect()' may issue 'ieee80211_free_hw()' when one of 'rtw_load_firmware_cb()' (usually the wowlan one) is still in progress, causing UAF detected by KASAN.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
In the Linux kernel's rtw88 driver, a race condition can cause use-after-free when firmware loading is interrupted by device disconnect.
Vulnerability
Overview
CVE-2024-47718 is a race condition vulnerability in the Linux kernel's Realtek rtw88 Wi-Fi driver. The flaw resides in the function rtw_wait_firmware_completion(), which fails to wait for both the regular and WoWLAN (Wake-on-WLAN) firmware loading attempts to complete before proceeding. If rtw_usb_intf_init() fails during rtw_usb_probe(), the rtw_usb_disconnect() path may call ieee80211_free_hw() while a firmware loading callback (typically the WoWLAN one) is still in progress. This race condition leads to a use-after-free (UAF) condition, as detected by the Kernel Address Sanitizer (KASAN) [1][2].
Attack
Vector and Exploitation
The vulnerability is exploitable locally, requiring physical or logical access to a system using a Realtek USB Wi-Fi adapter (rtw88 driver). An attacker could trigger the race by causing the device to be disconnected while the driver is still loading firmware. The attack vector is local, with low attack complexity, low privileges required, and no user interaction needed for exploitation. A successful exploit would allow an attacker with local access to trigger a use-after-free, potentially leading to system crashes or arbitrary code execution [1].
Impact and
Mitigation
The consequence of this vulnerability is a high-severity use-after-free condition, which can compromise system integrity by causing a denial of service (system crash) or potentially allowing privilege escalation from a local attacker. The CVSS v3 base score is 7.8 (High) [1]. The issue is addressed by ensuring that rtw_wait_firmware_completion() always waits for both firmware loading attempts to complete, as implemented in commits to the Linux kernel stable branches [3][4]. Users should apply the latest kernel updates to mitigate this vulnerability.
AI Insight generated on May 20, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
106- osv-coords104 versionspkg:deb/ubuntu/linux@6.11.0-18.18?arch=source&distro=oracularpkg:deb/ubuntu/linux-aws@6.11.0-1009.10?arch=source&distro=oracularpkg:deb/ubuntu/linux-azure@6.11.0-1009.9?arch=source&distro=oracularpkg:deb/ubuntu/linux-gcp@6.11.0-1009.9?arch=source&distro=oracularpkg:deb/ubuntu/linux-lowlatency@6.11.0-1010.11?arch=source&distro=oracularpkg:deb/ubuntu/linux-oracle@6.11.0-1011.12?arch=source&distro=oracularpkg:deb/ubuntu/linux-raspi@6.11.0-1008.8?arch=source&distro=oracularpkg:deb/ubuntu/linux-realtime@6.11.0-1005.5?arch=source&distro=oracularpkg:rpm/opensuse/dtb-aarch64&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-64kb&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-azure&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/kernel-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-debug&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-default-base&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-default&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-docs&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-kvmsmall&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-obs-build&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-obs-qa&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-rt_debug&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/kernel-rt_debug&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-rt&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/kernel-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-rt&distro=openSUSE%20Leap%20Micro%205.5pkg:rpm/opensuse/kernel-source-azure&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/kernel-source-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-source&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-source&distro=openSUSE%20Tumbleweedpkg:rpm/opensuse/kernel-source-longterm&distro=openSUSE%20Tumbleweedpkg:rpm/opensuse/kernel-source-rt&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/kernel-source-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-syms-azure&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/kernel-syms-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-syms&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-syms-rt&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/kernel-syms-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-zfcpdump&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-64kb&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP5pkg:rpm/suse/kernel-64kb&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP5pkg:rpm/suse/kernel-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-coco_debug&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Micro%205.5pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP5pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Availability%20Extension%2015%20SP5pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Availability%20Extension%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP5pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Micro%205.5pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP5pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Legacy%2015%20SP5pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Legacy%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Workstation%20Extension%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP5pkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-kvmsmall&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-kvmsmall&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-livepatch-MICRO-6-0-RT_Update_4&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-livepatch-MICRO-6-0-RT_Update_4&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-livepatch-MICRO-6-0_Update_4&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-livepatch-MICRO-6-0_Update_4&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-livepatch-SLE15-SP5-RT_Update_23&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP5pkg:rpm/suse/kernel-livepatch-SLE15-SP5_Update_21&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP5pkg:rpm/suse/kernel-livepatch-SLE15-SP6-RT_Update_5&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-livepatch-SLE15-SP6_Update_6&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP5pkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-rt_debug&distro=SUSE%20Real%20Time%20Module%2015%20SP5pkg:rpm/suse/kernel-rt_debug&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Enterprise%20Micro%205.5pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP5pkg:rpm/suse/kernel-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-source-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP5pkg:rpm/suse/kernel-source-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-source-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP5pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP5pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Enterprise%20Micro%205.5pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP5pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-syms-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP5pkg:rpm/suse/kernel-syms-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-syms-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP5pkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-syms-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP5pkg:rpm/suse/kernel-syms-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-zfcpdump&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP5pkg:rpm/suse/kernel-zfcpdump&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6
< 6.11.0-18.18+ 103 more
- (no CPE)range: < 6.11.0-18.18
- (no CPE)range: < 6.11.0-1009.10
- (no CPE)range: < 6.11.0-1009.9
- (no CPE)range: < 6.11.0-1009.9
- (no CPE)range: < 6.11.0-1010.11
- (no CPE)range: < 6.11.0-1011.12
- (no CPE)range: < 6.11.0-1008.8
- (no CPE)range: < 6.11.0-1005.5
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.33.75.1
- (no CPE)range: < 6.4.0-150600.8.17.2
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-150600.23.30.1.150600.12.12.6
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 5.14.21-150500.33.75.1
- (no CPE)range: < 6.4.0-150600.8.17.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.11.8-1.1
- (no CPE)range: < 6.12.11-1.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 5.14.21-150500.33.75.1
- (no CPE)range: < 6.4.0-150600.8.17.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.33.75.1
- (no CPE)range: < 6.4.0-150600.8.17.2
- (no CPE)range: < 6.4.0-15061.9.coco15sp6.1
- (no CPE)range: < 6.4.0-15061.9.coco15sp6.1
- (no CPE)range: < 5.14.21-150500.55.88.1.150500.6.39.4
- (no CPE)range: < 5.14.21-150500.55.88.1.150500.6.39.4
- (no CPE)range: < 6.4.0-150600.23.30.1.150600.12.12.6
- (no CPE)range: < 6.4.0-24.1.21.4
- (no CPE)range: < 6.4.0-24.1.21.4
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-24.1
- (no CPE)range: < 6.4.0-24.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-24.1
- (no CPE)range: < 6.4.0-24.1
- (no CPE)range: < 1-1.1
- (no CPE)range: < 1-1.1
- (no CPE)range: < 1-1.2
- (no CPE)range: < 1-1.2
- (no CPE)range: < 1-150500.11.3.1
- (no CPE)range: < 1-150500.11.5.1
- (no CPE)range: < 1-150600.1.3.1
- (no CPE)range: < 1-150600.13.3.5
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-22.1
- (no CPE)range: < 6.4.0-22.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 5.14.21-150500.33.75.1
- (no CPE)range: < 6.4.0-150600.8.17.1
- (no CPE)range: < 6.4.0-15061.9.coco15sp6.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 6.4.0-24.1
- (no CPE)range: < 6.4.0-24.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-22.1
- (no CPE)range: < 6.4.0-22.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 5.14.21-150500.33.75.1
- (no CPE)range: < 6.4.0-150600.8.17.1
- (no CPE)range: < 6.4.0-15061.9.coco15sp6.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
- (no CPE)range: < 5.14.21-150500.13.79.1
- (no CPE)range: < 6.4.0-150600.10.17.1
- (no CPE)range: < 5.14.21-150500.55.88.1
- (no CPE)range: < 6.4.0-150600.23.30.1
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
11- git.kernel.org/stable/c/0e735a4c6137262bcefe45bb52fde7b1f5fc6c4dnvdPatch
- git.kernel.org/stable/c/1b8178a2ae272256ea0dc4f940320a81003535e2nvdPatch
- git.kernel.org/stable/c/7887ad11995a4142671cc49146db536f923c8568nvdPatch
- git.kernel.org/stable/c/9432185540bafd42b7bfac6e6ef2f0a0fb4be447nvdPatch
- git.kernel.org/stable/c/a0c1e2da652cf70825739bc12d49ea15805690bfnvdPatch
- git.kernel.org/stable/c/ceaab3fb64d6a5426a3db8f87f3e5757964f2532nvdPatch
- git.kernel.org/stable/c/e9a78d9417e167410d6fb83c4e908b077ad8ba6dnvdPatch
- cert-portal.siemens.com/productcert/html/ssa-265688.htmlnvd
- cert-portal.siemens.com/productcert/html/ssa-355557.htmlnvd
- lists.debian.org/debian-lts-announce/2025/01/msg00001.htmlnvd
- lists.debian.org/debian-lts-announce/2025/03/msg00002.htmlnvd
News mentions
0No linked articles in our index yet.