CVE-2025-37918

MEDIUM EPSS 5.5%
Published May 20, 20251y ago · Modified Jun 17, 20261w ago
5.5 CVSS 3.1
Medium
Find Similar
Published May 20, 2025 1y ago
Last Modified Jun 17, 2026 1w ago

Description

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.

CVSS Details

Base Score
5.5
Exploitability
1.8
Impact
3.6
Vector string
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Attack Vector Local
Attack Complexity Low
Privileges Required Low
User Interaction None
Scope Unchanged
Confidentiality None
Integrity None
Availability High

Threat Intelligence

EPSS Exploit Probability
5.5% percentile
Exploit & Patch Status
No Known Exploit
Patch Available

Weaknesses 1

CWE-476 NULL Pointer Dereference Memory Safety

Affected Products 7

VendorProductVersionRange
linuxlinux_kernel*≥6.4  –  <6.6.90
linuxlinux_kernel*≥6.7  –  <6.12.28
linuxlinux_kernel*≥6.13  –  <6.14.6
linuxlinux_kernel6.15any
linuxlinux_kernel6.15any
linuxlinux_kernel6.15any
linuxlinux_kernel6.15any

References 4

  • git.kernel.org https://git.kernel.org/stable/c/0317b033abcd1d8dd2798f0e2de5e84543d0bd22
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/2e8d44ebaa7babdd5c5ab50ca275826e241920d6
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/8563d9fabd8a4b726ba7acab4737c438bf11a059
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/b70b41591ec48c78ec6a885e1f57bfc4029e5e13
    Patch

Remediation

  • git.kernel.org https://git.kernel.org/stable/c/0317b033abcd1d8dd2798f0e2de5e84543d0bd22
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/2e8d44ebaa7babdd5c5ab50ca275826e241920d6
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/8563d9fabd8a4b726ba7acab4737c438bf11a059
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/b70b41591ec48c78ec6a885e1f57bfc4029e5e13
    Patch