In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_sync: Fix command skb lifetime during scan setup Dur…
CVE-2026-99014 · GHSA-pm9c-823q-m3hj · EUVD-2026-108808 · published 23 Oct 2026
How serious is it
- Severity: high, CVSS score 7.8 out of 10.
- No exploit prediction (EPSS) score yet.
- Not on the CISA list of exploited vulnerabilities.
- No public exploit in Exploit-DB.
Is your app affected by CVE-2026-99014?
Paste this prompt into Claude Code, Cursor or any AI coding tool: it runs a free Shippable scan of your project and fixes what it finds. Built with Lovable, Bolt or v0? Scan your live app. Or upload your package file.
Who is affected
- Linux Linux: 6.9
- Linux Linux: 22cbf4f84c00da64196eb15034feee868e63eef0 <119ba8070b3f112dd36c897f4f70ea5bb7d370b8
- Linux Linux: patch: 6.6.160
- Linux Linux: patch: 7.3
- Linux Linux: 6.6.28 <6.6.160
- Linux Linux: patch: 6.12.114
- Linux Linux: 6.8.7 <6.9
- Linux Linux: patch: 0
- Linux Linux: patch: 6.18.57
- Linux Linux: 22cbf4f84c00da64196eb15034feee868e63eef0 <762850c203fab1190ad6a3de41cd51920b22236d
How to check
- Find out whether you run the affected product and which version, then compare it with the versions above.
How to fix
Copies a prompt for Claude Code, Cursor or Codex that asks it to check whether you run this product.
- Apply the vendor's update or mitigation from the references below. If there is none yet, limit exposure of the affected service until there is.
- If a vulnerable version was live, check your logs and rotate the secrets that server could read.
The advisory
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: hci_sync: Fix command skb lifetime during scan setup
During PA sync scan setup, hci_le_set_ext_scan_param_sync() gets the
address used for the PA_LINK lookup from hci_sent_cmd_data(). The
returned pointer borrows storage from sent_cmd or req_skb, without
holding a reference to either skb.
The scan worker runs on req_workqueue while hci_cmd_work() runs on the
separate device workqueue. After the scan worker loads sent_cmd, the
command worker can free and replace it before hci_sent_cmd_data()
dereferences the skb. The command payload can also be freed between
returning from the helper and comparing the address. The connection
lookup's RCU critical section does not protect the command skb.
KASAN reported:
BUG: KASAN: slab-use-after-free in hci_sent_cmd_data+0x27c/0x2f0
Workqueue: hci0 hci_cmd_sync_work
Call Trace:
hci_sent_cmd_data+0x27c/0x2f0
hci_le_set_scan_param_sync+0x43a/0x850
hci_passive_scan_sync+0xb09/0x1460
hci_update_passive_scan_sync+0x47c/0x6e0
hci_le_pa_create_sync+0x200/0xa70
hci_cmd_sync_work+0x13c/0x290
Allocated by task 95:
skb_clone+0x13f/0x340
hci_cmd_work+0x2a9/0x7e0
Freed by task 95:
kmem_cache_free+0xba/0x3a0
hci_cmd_work+0x29c/0x7e0
Use hdev->lock to serialize the address snapshot with sent_cmd
replacement. Protect req_skb replacement and completion cleanup with
the same lock because the helper falls back to that skb. Copy the
address before releasing the lock and use the copy for the existing
RCU-protected connection lookup. Release the mutex before sending or
waiting for commands, preserving the lookup and completion ordering.
Check your whole app
Dependencies are only half of it. Free and read-only: before you push, run npx shippable-dev scan localhost:3000 in your project folder, no account needed. For your live app, you prove it's yours with a one-line tag first.
References
- git.kernel.org/stable/c/f01cbddfb4273fcc9a786d13b0a2525029023605
- git.kernel.org/stable/c/119ba8070b3f112dd36c897f4f70ea5bb7d370b8
- git.kernel.org/stable/c/7db33b36213a3a1a40940c009ddac30670b55922
- git.kernel.org/stable/c/762850c203fab1190ad6a3de41cd51920b22236d
- git.kernel.org/stable/c/9af12272061d206af8bc3e40215cb694421ab73a
- nvd.nist.gov/vuln/detail/CVE-2026-99014
Merged from ENISA EUVD. Last updated 25 Oct 2026. All vulnerabilities · RSS · JSON