CVE-2026-80764

Bluetooth: hci_event: fix LE list UAF on reset

State
Published
Severity
Not scored
Published
Sep 4, 2026
Updated
Oct 19, 2026
Reserved
Aug 26, 2026

Read the record on cve.org

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.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • a4d5504d5c39cc84f1f828e19967595597a8136e to before 8e68c380290b1dd64a0a512ce66d0264130c46edAffected
  • a4d5504d5c39cc84f1f828e19967595597a8136e to before 0628cc9b2fa29985a7b8c774741f8a736b0f5e7cAffected
  • a4d5504d5c39cc84f1f828e19967595597a8136e to before d57702d4c55633c243da5a2fec37ae2ad4adb621Affected
  • a4d5504d5c39cc84f1f828e19967595597a8136e to before 39a3afb91be3cb465f46ce7a8e5696d9e33edf93Affected
  • a4d5504d5c39cc84f1f828e19967595597a8136e to before b55e83a4ba31d40deae22d4e4dc8c84083e953c6Affected
  • a4d5504d5c39cc84f1f828e19967595597a8136e to before 25b05e3ce31d954540e99954bcc66cbceb27ab35Affected
  • a4d5504d5c39cc84f1f828e19967595597a8136e to before 33af47e847fe4a28b109673affb5874015d54f5aAffected
  • 0de8cd646b0152c9ddd10257d8284938d0df0181Affected
  • 3.18.3 to before 3.19Affected
LinuxLinux
  • 3.19Affected
  • before 3.19Not affected
  • 6.1.185 through 6.1.*Not affected
  • 6.6.154 through 6.6.*Not affected
  • 6.12.106 through 6.12.*Not affected
  • 6.18.47 through 6.18.*Not affected
  • 7.1.11 through 7.1.*Not affected
  • 7.2.1 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.