CVE-2026-31497
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: btusb: clamp SCO altsetting table indices
btusb_work() maps the number of active SCO links to USB alternate settings through a three-entry lookup table when CVSD traffic uses transparent voice settings. The lookup currently indexes alts[] with data->sco_num - 1 without first constraining sco_num to the number of available table entries.
While the table only defines alternate settings for up to three SCO links, data->sco_num comes from hci_conn_num() and is used directly. Cap the lookup to the last table entry before indexing it so the driver keeps selecting the highest supported alternate setting without reading past alts[].
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 312c4450fe23014665c163f480edd5ad2e27bbb8 | affected |
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 9dd13a8641de79bc1bc93da55cdd35259a002683 | affected |
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 476c9262b430c38c6a701a3b8176a3f48689085b | affected |
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 6fba3c3d48c927e55611a0f5ea34da88138ed0ff | affected |
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 834cf890d2c3d29cbfa1ee2376c40469c28ec297 | affected |
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 1019028eb124564cf7bca58a16f1df8a1ca30726 | affected |
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 21c254202f9d78abe0fcd642a92966deb92bd226 | affected |
| Linux | Linux | baac6276c0a9f36f1fe1f00590ef00d2ba5ba626 < 129fa608b6ad08b8ab7178eeb2ec272c993aaccc | affected |
| Linux | Linux | 5.8 | affected |
| Linux | Linux | 0 < 5.8 | unaffected |
| Linux | Linux | 5.10.253 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.203 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.168 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.131 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.80 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.21 <= 6.18.* | unaffected |
| Linux | Linux | 6.19.11 <= 6.19.* | unaffected |
| Linux | Linux | 7.0 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/312c4450fe23014665c163f480edd5ad2e27bbb8
- https://git.kernel.org/stable/c/9dd13a8641de79bc1bc93da55cdd35259a002683
- https://git.kernel.org/stable/c/476c9262b430c38c6a701a3b8176a3f48689085b
- https://git.kernel.org/stable/c/6fba3c3d48c927e55611a0f5ea34da88138ed0ff
- https://git.kernel.org/stable/c/834cf890d2c3d29cbfa1ee2376c40469c28ec297
- https://git.kernel.org/stable/c/1019028eb124564cf7bca58a16f1df8a1ca30726
- https://git.kernel.org/stable/c/21c254202f9d78abe0fcd642a92966deb92bd226
- https://git.kernel.org/stable/c/129fa608b6ad08b8ab7178eeb2ec272c993aaccc
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.