Vulnerability · CVE-2026-99091
CVE-2026-99091: Bluetooth: MGMT: Fix status of pending commands flushed on power off
Published Oct 26, 2026 · catalog updated Oct 28, 2026 · Linux Linux Kernel
Last checked Nov 3, 2026. A connected source was read within the last 7 days.
Check if you run it
No confirmed exploitation is on record for CVE-2026-99091. EPSS is 0.17%. Act only if a listed version of Linux Linux Kernel is installed.
Gaps on this record
- No vendor fix or required action is stored. Compare the linked advisory before you change production.
Same product and reporting
- CVE-2026-99270 · High
- CVE-2026-99262 · Unknown
- CVE-2026-99268 · Unknown
- CVE-2026-99269 · High
- CVE-2026-99267 · Unknown
- Severity
- Medium—
- Known exploitation
- Not in CISA/VulnCheck KEV
- EPSS
- 0.17%
- Remediation
- Advisory link
- Affected products
- Linux Kernel · linux kernel · package unmanaged
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: MGMT: Fix status of pending commands flushed on power off cmd_complete_rsp() receives a struct cmd_lookup and, for a pending command that has no cmd_complete callback, falls through to cmd_status_rsp(cmd, data). cmd_status_rsp() reads data as a u8 *, so the status sent comes from the first byte of match->sk's representation, not from match->mgmt_status. commit f53e1c9c726d ("Bluetooth: MGMT: Fix possible crash on mgmt_index_removed") changed the callers' data from &status to &match and updated the cmd_complete branch to match->mgmt_status, but left the fall-through passing data unchanged. In mgmt_index_removed() match->sk is NULL, so every such command is answered with status 0x00 (Success) instead of MGMT_STATUS_INVALID_INDEX. In __mgmt_power_off() it is NULL too, unless a Set Powered command was pending: then settings_rsp() has stored that command's socket in match->sk, and the byte sent comes from the socket pointer. Either way the status the caller set, MGMT_STATUS_NOT_POWERED (or MGMT_STATUS_INVALID_INDEX when the device is being unregistered), is lost. Pass the status the callers set. This was seen on a QCA9377 laptop: bluetoothd's Start Discovery, pending when the adapter was powered off, was answered with Command Status 0x00 and no parameters, and bluetoothd 5.72 crashed on the zero-length success. BlueZ master has since added the length check on that path ("adapter: Fix crash on short start discovery reply", BlueZ a734b06059cb), but userspace should still be told Not Powered, not Success. Tested on Ubuntu 7.0.0-31 with a virtual controller (hci_vhci): power off is held in HCI Write Scan Enable while a Start Discovery is submitted, and the flush answers it with status 0x00 before this change and 0x0f (Not Powered) after.
Are you affected?
Enter the version you run. The result uses only the ranges stored on this record.
The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.
- Linux Kernel0 → 6.6.160; 6.7.0 → 6.12.113; 6.12.0 → 6.18.57
- linux kernelversion unspecified
- package unmanagedversion unspecified
How to fix CVE-2026-99091
Upgrade
CVE-2026-99091 lists a fix boundary at 6.6.160. Compare the installed build with that boundary before you change production.
Version check
Fixed in 6.6.160; 6.7.0
Advisory
Open the cve_org record and follow its fix.
Official advisories
What to do
Three questions, each answered from this record only. Confirm the vendor advisory before you patch.
Should you patch?
No confirmed exploitation is on record for CVE-2026-99091. EPSS is 0.17%. Act only if a listed version of Linux Linux Kernel is installed.
Which versions are affected?
Compare what you have installed with Kernel 0 → 6.6.160; 6.7.0 → 6.12.113; 6.12.0 → 6.18.57. Compare the installed version with the linked vendor advisory before you change production.
What should an analyst verify?
No weakness class is stored. EPSS 0.17%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Oct 26, 2026 · Linux Kernel CVE
Detected
From: Greg Kroah-Hartman Description =========== In the Linux kernel, the following vulnerability has been resolved: Bluetooth: MGMT: Fix status of pending commands flushed on power off cmd_complete_rsp() receives a struct cmd_lookup and, for a pending command that has no cmd_complete callback, falls through to cmd_status_rsp(cmd, data). cmd_status_rsp() reads data as a u8 *, so the status sent co
Oct 28, 2026 · OpenSSF OSV / OSV Scanner
Fix available
Kernel fixed in 6.6.160; Kernel fixed in 6.12.113; Kernel fixed in 6.18.57; Kernel fixed in 7.2.11
Oct 28, 2026 · OpenSSF OSV / OSV Scanner
Fix available
Kernel fixed in 6.6.160; 6.7.0
Oct 28, 2026 · OpenSSF OSV / OSV Scanner
Updated
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: MGMT: Fix status of pending commands flushed on power off cmd_complete_rsp() receives a struct cmd_lookup and, for a pending command that has no cmd_complete callback, falls through to cmd_status_rsp(cmd, data). cmd_status_rsp() reads data as a u8 *, so the status sent comes from the first byte of match->sk's representa
Sources
- CVE.orgVulnerability recordCVE-2026-99091
Official CVE identifier
cve.org - FIRST EPSSExploitation probabilityCVE-2026-99091
30-day exploitation probability 0.17%
first.org - Linux Kernel CVEVendor advisoryCVE-2026-99091
From: Greg Kroah-Hartman Description =========== In the Linux kernel, the following vulnerability has been resolved: Bluetooth: MGMT: Fix status of pending commands flushed on power off cmd_complete_rsp() receives a struct cmd_lookup and, for a pending command that has no cmd_com
git.kernel.org - OpenSSF OSV / OSV ScannerPackage advisoryCVE-2026-99091
Bluetooth: MGMT: Fix status of pending commands flushed on power off
osv.dev - Snyk Vulnerability DatabasePackage advisorySNYK-UNMANAGED-TORVALDSLINUX-21735661
Denial of Service (DoS)
security.snyk.io
References
Freshness
Last verified in this catalog Nov 3, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.
- FIRST EPSSOct 31, 2026
- Snyk Vulnerability DatabaseOct 29, 2026
- OpenSSF OSV / OSV ScannerOct 28, 2026
- Linux Kernel CVEOct 28, 2026
- CVE.orgOct 27, 2026