Sceawere
Vulnerability Detail
CVE-2026-74509UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV
Linux Kernel Bluetooth Advertising UAF
Vulnerability Metadata
- Severity
- High
- Score / CVSS
- 8.8
- Creation Date
- 1d ago
- Vendor
- Linux
- Product
- Linux
- Attack Type
- N/A
- Vector String
- CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Attack Complexity
- LOW
Narrative and Response
Description
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_sync: Fix advertising data UAFs hci_find_adv_instance() returns an adv_info pointer that is valid only while hdev->lock is held. The advertising command-sync paths perform instance lookups without that lock and, in some cases, retain the pointer while waiting for a controller response. An advertising termination event can therefore interleave as follows: hci_cmd_sync_work hci_rx_work hci_find_adv_instance() __hci_cmd_sync_status() wait for controller reply hci_dev_lock() hci_remove_adv_instance() kfree(adv) adv->scan_rsp_changed = false KASAN reported: BUG: KASAN: slab-use-after-free in hci_set_ext_scan_rsp_data_sync+0x2e1/0x300 Write of size 1 at addr ffff88810a45d21d by task kworker/u17:0/88 Workqueue: hci0 hci_cmd_sync_work Call Trace: hci_set_ext_scan_rsp_data_sync+0x2e1/0x300 hci_schedule_adv_instance_sync+0x390/0x4c0 hci_cmd_sync_work+0x173/0x300 Allocated by task 87: hci_add_adv_instance+0x538/0xac0 add_advertising+0x885/0x1160 Freed by task 89: kfree+0x131/0x3c0 hci_remove_adv_instance+0x1d8/0x3b0 hci_le_ext_adv_term_evt+0x17b/0x730 Protect the instance lookup and payload construction in the extended advertising, scan response, and periodic advertising data paths. Snapshot the advertising parameters under hdev->lock, but release the lock before waiting for the controller. Clear advertising-data dirty bits before issuing their commands and restore them after a failure using a fresh lookup. Likewise, update the reported transmit power through a fresh lookup after the parameter command completes. No adv_info pointer then survives an HCI command wait.
Executive Summary
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Technical Details
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Mitigations
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
References
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Additional Metadata
{
"score": "8.8",
"pubDate": "2026-08-15T13:17:55.950Z",
"pubdate": "2026-08-15T13:17:55.950Z",
"executiveSummary": "A Use-After-Free (UAF) vulnerability exists in the Linux kernel Bluetooth subsystem, specifically within the hci_sync component.\nThe vulnerability arises due to improper locking and lifetime management of advertising instance pointers (adv_info) during asynchronous HCI command processing.\nAn attacker or local system event can trigger a race condition where an advertising instance is freed via hci_remove_adv_instance() while another execution context (hci_cmd_sync_work) retains and subsequently writes to the stale adv_info pointer.\nThis flaw can lead to kernel memory corruption, potential privilege escalation, or a Denial of Service (DoS) resulting in a kernel panic.\nExploitation requires local execution context or the ability to trigger specific Bluetooth advertising termination events that interleave with command synchronization work queues.\nSystems running affected Linux kernel versions with Bluetooth LE advertising and extended scanning features enabled are susceptible to this vulnerability.",
"technicalDetails": "The vulnerability is rooted in how hci_find_adv_instance() manages the lifecycle of adv_info pointers. The returned pointer is strictly valid only while hdev->lock is held.\nHowever, the advertising command-sync paths perform instance lookups without holding this lock and retain the pointer across operations that wait for controller responses, such as __hci_cmd_sync_status().\nDuring the wait state, control flow is relinquished, allowing other work queues—such as hci_rx_work handling advertising termination events (hci_le_ext_adv_term_evt)—to acquire hdev->lock and invoke hci_remove_adv_instance().\nhci_remove_adv_instance() frees the adv_info structure via kfree(adv).\nOnce the controller response is received, the original execution context resumes and attempts to modify or access members of the now-freed structure (e.g., setting adv->scan_rsp_changed = false), triggering a slab-use-after-free caught by KASAN in functions such as hci_set_ext_scan_rsp_data_sync().\nThe vulnerable components include the extended advertising, scan response, and periodic advertising data paths within net/bluetooth/hci_sync.c.\nExploitation occurs step-by-step through the interleaving of hci_cmd_sync_work and hci_rx_work: first, an advertising instance lookup is performed without locking; second, the execution thread sleeps waiting for a controller reply; third, an asynchronous termination event frees the advertising instance; and finally, upon resumption, a write operation targets the stale memory address, corrupting kernel heap memory."
}