CVE-2026-98110: Bluetooth: btintel: bound firmware ID by TLV length
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: btintel: bound firmware ID by TLV length
The firmware ID is treated as a NUL-terminated string even though the TLV length is its only boundary. If the value does not contain a NUL terminator, snprintf() can read beyond the received response.
Limit the conversion to the advertised TLV value length.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Compensating control
Limit firmware ID conversion to the advertised TLV value length; use the TLV length as the sole boundary instead of treating the firmware ID as NUL-terminated, preventing snprintf() from reading beyond the received response.
Event History
Frequently Asked Questions
What condition is required to trigger the out-of-bounds read?
The Bluetooth Intel driver must receive a firmware ID TLV whose value lacks a NUL terminator. The driver previously treated that value as a NUL-terminated string despite the TLV length being the only valid boundary.
What is the practical mitigation if an update cannot be applied immediately?
The provided data identifies the issue in the Linux kernel Bluetooth Intel driver and does not provide a configuration workaround. Avoiding exposure would require preventing the driver from processing the affected malformed firmware ID response until a fixed kernel is deployed.
How can I determine whether a kernel includes the fix?
Check whether the kernel incorporates one of the referenced stable commits: aef56a2bd5aa22808ce508605d7497d2b5e8eb5f, 058f56de5f48ba4b3be01526006ac83ce9e79f39, or a07b3024a927892dd46e7dfbed438e8834e24098. The fix limits firmware ID conversion to the advertised TLV value length.