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

Bluetooth: hci_event: fix LE list UAF on reset

hci_cc_reset() clears the LE accept and resolving lists without taking
hdev->lock. Other command-complete handlers serialize updates to these
lists with that lock, and the debugfs readers hold it while walking them.

This permits the reset completion and a debugfs read to interleave as
follows:

hci_rx_work debugfs reader
----------- --------------
lock hdev->lock
fetch current entry
list_del(entry)
kfree(entry)
read entry fields

The reader then dereferences a freed list entry and may follow its stale
next pointer.

KASAN reported:

BUG: KASAN: slab-use-after-free in white_list_show+0x15f/0x180
Read of size 1 at addr ffff8881015dab16 by task poc/95

Call Trace:
white_list_show+0x15f/0x180
seq_read_iter+0x3ff/0x1190
seq_read+0x267/0x3d0
vfs_read+0x177/0xa20
ksys_read+0xf7/0x1c0

Allocated by task 91:
hci_bdaddr_list_add+0x1a6/0x3a0
hci_cc_le_add_to_accept_list+0xab/0x140
hci_cmd_complete_evt+0x26c/0x9a0
hci_event_packet+0x454/0xb20
hci_rx_work+0x293/0x730

Freed by task 90:
kfree+0x131/0x3c0
hci_bdaddr_list_clear+0xd8/0x160
hci_cc_reset+0x28a/0x370
hci_cmd_complete_evt+0x26c/0x9a0
hci_event_packet+0x454/0xb20
hci_rx_work+0x293/0x730

Take hdev->lock around both list clears. This matches the existing
mutation and traversal locking convention.
Published: 2026-09-04
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux Bluetooth implementation contains a race condition where the command-complete handler hci_cc_reset() clears the LE accept and resolving lists without acquiring hdev->lock. If a debugfs reader accesses these lists at the same time, the reader can dereference a freed list entry, leading to a use‑after‑free. This memory corruption can trigger a kernel panic or provide a local privileged attacker an opportunity to gain control of the kernel.

Affected Systems

All versions of the Linux kernel that include the defective hci_cc_reset() logic are affected. The precise version range is not specified in the advisory, so any kernel prior to the commit that introduces the hdev->lock around list clears is vulnerable. Users should verify that their kernel has applied the fix incorporated in the referenced patch set.

Risk and Exploitability

The vulnerability is local and requires concurrently accessing Bluetooth debugfs files while a reset is being processed. Exploitation would need a privileged user or root to read debugfs, and is non‑trivial due to the race condition. No EPSS score is available and the issue is not listed in the CISA KEV catalog, indicating it is not currently known to be widely exploited, but the potential consequence is significant if it is triggered. The absence of a CVSS score precludes a formal quantitative severity assessment, but the nature of a use‑after‑free in kernel code suggests a high risk if exploited.

Generated by OpenCVE AI on September 4, 2026 at 17:18 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update to a Linux kernel version that includes the hci_cc_reset lock fix (commit 0628cc9b2fa29985a7b8c774741f8a736b0f5e7c).
  • Verify the kernel source or release notes to confirm the presence of the lock around LE list clears before deploying the update.
  • If an immediate kernel update is not possible, limit or disable access to the Bluetooth debugfs interfaces for non‑trusted users to reduce the chance of a race condition occurring.

Generated by OpenCVE AI on September 4, 2026 at 17:18 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 04 Sep 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_event: fix LE list UAF on reset hci_cc_reset() clears the LE accept and resolving lists without taking hdev->lock. Other command-complete handlers serialize updates to these lists with that lock, and the debugfs readers hold it while walking them. This permits the reset completion and a debugfs read to interleave as follows: hci_rx_work debugfs reader ----------- -------------- lock hdev->lock fetch current entry list_del(entry) kfree(entry) read entry fields The reader then dereferences a freed list entry and may follow its stale next pointer. KASAN reported: BUG: KASAN: slab-use-after-free in white_list_show+0x15f/0x180 Read of size 1 at addr ffff8881015dab16 by task poc/95 Call Trace: white_list_show+0x15f/0x180 seq_read_iter+0x3ff/0x1190 seq_read+0x267/0x3d0 vfs_read+0x177/0xa20 ksys_read+0xf7/0x1c0 Allocated by task 91: hci_bdaddr_list_add+0x1a6/0x3a0 hci_cc_le_add_to_accept_list+0xab/0x140 hci_cmd_complete_evt+0x26c/0x9a0 hci_event_packet+0x454/0xb20 hci_rx_work+0x293/0x730 Freed by task 90: kfree+0x131/0x3c0 hci_bdaddr_list_clear+0xd8/0x160 hci_cc_reset+0x28a/0x370 hci_cmd_complete_evt+0x26c/0x9a0 hci_event_packet+0x454/0xb20 hci_rx_work+0x293/0x730 Take hdev->lock around both list clears. This matches the existing mutation and traversal locking convention.
Title Bluetooth: hci_event: fix LE list UAF on reset
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-04T15:12:36.599Z

Reserved: 2026-08-26T14:34:25.791Z

Link: CVE-2026-80764

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-04T16:18:01.617

Modified: 2026-09-04T16:18:01.617

Link: CVE-2026-80764

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-04T17:30:17Z

Weaknesses

No weakness.