CVE-2025-37918: Bluetooth: btusb: avoid NULL pointer dereference in skb_dequeue()
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: btusb: avoid NULL pointer dereference in skb_dequeue()
A NULL pointer dereference can occur in skb_dequeue() when processing a
QCA firmware crash dump on WCN7851 (0489:e0f3).
[ 93.672166] Bluetooth: hci0: ACL memdump size(589824)
[ 93.672475] BUG: kernel NULL pointer dereference, address: 0000000000000008
[ 93.672517] Workqueue: hci0 hci_devcd_rx [bluetooth]
[ 93.672598] RIP: 0010:skb_dequeue+0x50/0x80
The issue stems from handle_dump_pkt_qca() returning 0 even when a dump
packet is successfully processed. This is because it incorrectly
forwards the return value of hci_devcd_init() (which returns 0 on
success). As a result, the caller (btusb_recv_acl_qca() or
btusb_recv_evt_qca()) assumes the packet was not handled and passes it
to hci_recv_frame(), leading to premature kfree() of the skb.
Later, hci_devcd_rx() attempts to dequeue the same skb from the dump
queue, resulting in a NULL pointer dereference.
Fix this by:
1. Making handle_dump_pkt_qca() return 0 on success and negative errno
on failure, consistent with kernel conventions.
2. Splitting dump packet detection into separate functions for ACL
and event packets for better structure and readability.
This ensures dump packets are properly identified and consumed, avoiding
double handling and preventing NULL pointer access.
Security readout for executives and security teams
Plain-English summary
A Linux Bluetooth driver flaw can crash the kernel while processing a Qualcomm WCN7851 firmware crash dump. This may interrupt affected endpoints or services. Exposure appears hardware- and driver-specific, and the supplied sources do not establish a practical path to data theft or modification.
Executive priority
Prioritize prompt remediation for confirmed WCN7851 systems, especially availability-sensitive endpoints. This is not supported as an emergency fleetwide issue without matching hardware and affected kernel exposure. Track vendor kernel updates and validate deployment because the supplied version data is incomplete.
Technical view
The btusb QCA dump handler can treat a successfully queued dump packet as unhandled. The same socket buffer is then passed to normal HCI processing and freed prematurely. Later, hci_devcd_rx attempts to dequeue it, causing a NULL pointer dereference in skb_dequeue(). Stable kernel commits correct packet detection and handling.
Likely exposure
Potentially exposed systems run an affected Linux kernel and use the Qualcomm WCN7851 Bluetooth device identified as USB 0489:e0f3. The bundle lists affected versions including 6.4, 6.6.90, 6.12.28, 6.14.6, and 6.15, but does not clearly define complete version boundaries.
Exploitation context
The CVSS 3.1 score is 8.8 with an adjacent attack vector. However, the sources only document a crash-dump processing failure and do not explain how an attacker could trigger it. The CVE is not listed in KEV, and no active exploitation or public exploit is established by the bundle.
Researcher notes
The demonstrated consequence is a kernel NULL pointer dereference caused by premature freeing and later reuse of an skb during QCA dump handling. Although the CVSS vector claims high confidentiality, integrity, and availability effects, the supplied technical evidence directly supports a crash condition; broader impacts and attacker-controlled reachability remain unproven.
Mitigation direction
Inventory systems using the WCN7851 Bluetooth device and affected Linux kernels.
Apply supported kernel updates containing the referenced stable fixes.
Prioritize systems where Bluetooth is enabled and service interruption has significant business impact.
If updates are unavailable, obtain supported mitigation guidance from the Linux distribution or hardware vendor.
Validation and detection
Confirm whether systems contain USB device 0489:e0f3 or the WCN7851 Bluetooth chipset.
Compare installed kernel builds against distribution advisories and the referenced stable commits.
Review kernel logs for Bluetooth crash dumps, hci_devcd_rx activity, and skb_dequeue NULL dereferences.
Confirm updated kernel packages incorporate the applicable stable fix before closing remediation.
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-37918 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
0ADP providers
5Source 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.