Description
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: serialize accept_q access bt_sock_poll() walks the accept queue without synchronization, while child teardown can unlink the same socket and drop its last reference. The unsynchronized accept queue walk has existed since the initial Bluetooth import. Protect accept_q with a dedicated lock for queue updates and polling. Also rework bt_accept_dequeue() to take temporary child references under the queue lock before dropping it and locking the child socket.
CVSS breakdown
CVSS 3.1
Attack Vector
Adjacent
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Affected products
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – d9ce4de05df2385c19e2c7d12f529144e1a44af1
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – 41c8c1c7923e86e0eb59cfb4279349112756a336
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – 4ec17782fd186f901a7329605d11048b085b945a
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – be43e6b4043113c3b3cf887c3c8350f67140274c
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – 85f8674cae82053f1e6bab295f6a8422cca14db5
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – 8b4c412e001b0c670eb937beab491af974da55b3
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – a218bf69eb51fefe59a3976fa8925261141f681c
- Linux / Linux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 – e83f5e24da741fa9405aeeff00b08c5ee7c37b88
- Linux / Linux2.6.12 – 2.6.12
- Linux / Linux0 – 2.6.12
- Linux / Linux5.10.259 – 5.10.*
- Linux / Linux5.15.210 – 5.15.*
- Linux / Linux6.1.176 – 6.1.*
- Linux / Linux6.6.142 – 6.6.*
- Linux / Linux6.12.92 – 6.12.*
- Linux / Linux6.18.34 – 6.18.*
- Linux / Linux7.0.11 – 7.0.*
- Linux / Linux7.1 – *
References
- MISChttps://git.kernel.org/stable/c/d9ce4de05df2385c19e2c7d12f529144e1a44af1
- MISChttps://git.kernel.org/stable/c/41c8c1c7923e86e0eb59cfb4279349112756a336
- MISChttps://git.kernel.org/stable/c/4ec17782fd186f901a7329605d11048b085b945a
- MISChttps://git.kernel.org/stable/c/be43e6b4043113c3b3cf887c3c8350f67140274c
- MISChttps://git.kernel.org/stable/c/85f8674cae82053f1e6bab295f6a8422cca14db5
- MISChttps://git.kernel.org/stable/c/8b4c412e001b0c670eb937beab491af974da55b3
- MISChttps://git.kernel.org/stable/c/a218bf69eb51fefe59a3976fa8925261141f681c
- MISChttps://git.kernel.org/stable/c/e83f5e24da741fa9405aeeff00b08c5ee7c37b88