Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: mgmt: fix race in read_unconf_index_list() read_unconf_index_list() counts unconfigured controllers before allocating its response, then checks the device flags again while filling it. hci_dev_list_lock stabilizes list membership, but it does not serialize the per-device flags. During asynchronous controller setup, the worker can set HCI_UNCONFIGURED and clear HCI_SETUP between the two passes. A controller omitted from the allocation count can then become eligible for the fill pass, causing an out-of-bounds write to rp->index[]. Allocate space for every device on hci_dev_list. Since list membership cannot change while hci_dev_list_lock is held, the response remains large enough regardless of flag transitions. The reported count and response length still include only eligible unconfigured controllers.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 73d1df2a7a1036a1f000e5f0ece6ade3e082b854 before 524e0450dd9a396f99a81b045219b0e2ea0dab57; affected 73d1df2a7a1036a1f000e5f0ece6ade3e082b854 before 8ddf962c76432a10a6cb80042875cbc48a9c056b; affected 73d1df2a7a1036a1f000e5f0ece6ade3e082b854 before 416546cd6a54e9b68f2b91bc680b1ee17dcd77a1; affected 73d1df2a7a1036a1f000e5f0ece6ade3e082b854 before 2e8bba0360d1379bfa8da47c8f5dadbb10a3fba1; affected 73d1df2a7a1036a1f000e5f0ece6ade3e082b854 before b5dbb41b212c50c095a4dbee3017a84fe94f033b |
| Linux / Linux | affected 3.17; unaffected 0 before 3.17; unaffected 6.6.158 through 6.6.*; unaffected 6.12.112 through 6.12.*; unaffected 6.18.55 through 6.18.*; unaffected 7.2.9 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/524e0450dd9a396f99a81b045219b0e2ea0dab57
- https://git.kernel.org/stable/c/8ddf962c76432a10a6cb80042875cbc48a9c056b
- https://git.kernel.org/stable/c/416546cd6a54e9b68f2b91bc680b1ee17dcd77a1
- https://git.kernel.org/stable/c/2e8bba0360d1379bfa8da47c8f5dadbb10a3fba1
- https://git.kernel.org/stable/c/b5dbb41b212c50c095a4dbee3017a84fe94f033b