CVE-2025-38604: wifi: rtl818x: Kill URBs before clearing tx status queue
In the Linux kernel, the following vulnerability has been resolved:
wifi: rtl818x: Kill URBs before clearing tx status queue
In rtl8187_stop() move the call of usb_kill_anchored_urbs() before clearing
b_tx_status.queue. This change prevents callbacks from using already freed
skb due to anchor was not killed before freeing such skb.
BUG: kernel NULL pointer dereference, address: 0000000000000080
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD 0 P4D 0
Oops: Oops: 0000 [#1] SMP NOPTI
CPU: 7 UID: 0 PID: 0 Comm: swapper/7 Not tainted 6.15.0 #8 PREEMPT(voluntary)
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 0.0.0 02/06/2015
RIP: 0010:ieee80211_tx_status_irqsafe+0x21/0xc0 [mac80211]
Call Trace:
<IRQ>
rtl8187_tx_cb+0x116/0x150 [rtl8187]
__usb_hcd_giveback_urb+0x9d/0x120
usb_giveback_urb_bh+0xbb/0x140
process_one_work+0x19b/0x3c0
bh_worker+0x1a7/0x210
tasklet_action+0x10/0x30
handle_softirqs+0xf0/0x340
__irq_exit_rcu+0xcd/0xf0
common_interrupt+0x85/0xa0
</IRQ>
Tested on RTL8187BvE device.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Security readout for executives and security teams
Plain-English summary
A shutdown-ordering flaw in Linux’s RTL8187 USB Wi-Fi driver can let an outstanding USB callback access already-freed network data. The documented result is a kernel null-pointer dereference and system crash. Risk is concentrated on systems using the affected driver; the source bundle does not establish remote reachability or proven code execution.
Executive priority
Treat as a high-priority, hardware-dependent Linux update rather than an enterprise-wide emergency. Quickly identify systems using RTL8187 USB Wi-Fi, then patch critical or multi-user hosts first. The demonstrated business risk is unplanned outage; broader compromise remains possible under the CVSS assessment but is not proven by the supplied evidence.
Technical view
In rtl8187_stop(), transmit-status data was cleared before anchored USB requests were killed. A remaining rtl8187_tx_cb callback could therefore pass a freed skb into mac80211, causing invalid kernel-memory access. The correction reverses that order. Testing reproduced a kernel oops on an RTL8187BvE device. CVSS 3.1 is 7.8 with local, low-privilege access required.
Likely exposure
Potentially exposed systems run an affected Linux kernel and actively use the rtl8187 driver for compatible USB Wi-Fi hardware. The issue was tested on RTL8187BvE, but the bundle does not define every susceptible adapter, distribution package, or configuration. Internet-facing status alone does not establish exposure because the supplied CVSS vector identifies a local attack path.
Exploitation context
CISA KEV status is false, and the supplied sources provide no evidence of active exploitation. The documented evidence is a reproducible kernel crash during driver shutdown behavior. The CVSS vector requires local access with low privileges and no user interaction; reliable privilege escalation, arbitrary code execution, and remote exploitation are not demonstrated in the bundle.
Researcher notes
The failure is a teardown race involving anchored URBs and the transmit-status queue. The source describes callbacks using a freed skb and shows an interrupt-context null dereference. Researchers should distinguish the demonstrated denial of service from the CVSS confidentiality and integrity impacts. Exact affected distribution builds require vendor mapping; upstream commit identifiers alone may not match package versions.
Mitigation direction
Install a vendor-supported kernel containing the applicable rtl8187 fix.
Check distribution advisories to map packaged kernels to the listed upstream corrections.
If immediate patching is impossible, avoid using affected RTL8187 hardware where operationally acceptable.
Prioritize shared, sensitive, or availability-critical Linux systems using the driver.
Validation and detection
Inventory Linux systems for loaded or configured rtl8187 driver usage.
Identify connected RTL8187-compatible USB Wi-Fi adapters, including RTL8187BvE.
Compare running kernel packages with Linux and distribution security advisories.
Confirm the applicable stable-kernel correction is present after updating.
Monitor kernel logs for rtl8187_tx_cb, ieee80211_tx_status_irqsafe, oops, or null dereferences.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-38604 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
12Source links
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.