7.8

CVE-2022-49474

Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout

In the Linux kernel, the following vulnerability has been resolved:

Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout

Connecting the same socket twice consecutively in sco_sock_connect()
could lead to a race condition where two sco_conn objects are created
but only one is associated with the socket. If the socket is closed
before the SCO connection is established, the timer associated with the
dangling sco_conn object won't be canceled. As the sock object is being
freed, the use-after-free problem happens when the timer callback
function sco_sock_timeout() accesses the socket. Here's the call trace:

dump_stack+0x107/0x163
? refcount_inc+0x1c/
print_address_description.constprop.0+0x1c/0x47e
? refcount_inc+0x1c/0x7b
kasan_report+0x13a/0x173
? refcount_inc+0x1c/0x7b
check_memory_region+0x132/0x139
refcount_inc+0x1c/0x7b
sco_sock_timeout+0xb2/0x1ba
process_one_work+0x739/0xbd1
? cancel_delayed_work+0x13f/0x13f
? __raw_spin_lock_init+0xf0/0xf0
? to_kthread+0x59/0x85
worker_thread+0x593/0x70e
kthread+0x346/0x35a
? drain_workqueue+0x31a/0x31a
? kthread_bind+0x4b/0x4b
ret_from_fork+0x1f/0x30
Daten sind bereitgestellt durch National Vulnerability Database (NVD)
LinuxLinux Kernel Version >= 4.4.284 < 4.5
LinuxLinux Kernel Version >= 4.9.238 < 4.9.318
LinuxLinux Kernel Version >= 4.14.247 < 4.14.283
LinuxLinux Kernel Version >= 4.19.207 < 4.19.247
LinuxLinux Kernel Version >= 5.4.146 < 5.4.198
LinuxLinux Kernel Version >= 5.10.65 < 5.10.121
LinuxLinux Kernel Version >= 5.13.17 < 5.14
LinuxLinux Kernel Version >= 5.14.4 < 5.15.46
LinuxLinux Kernel Version >= 5.16 < 5.17.14
LinuxLinux Kernel Version >= 5.18 < 5.18.3
VulnDex Vulnerability Enrichment
Diese Information steht angemeldeten Benutzern zur Verfügung. Login Login
Zu dieser CVE wurde keine Warnung gefunden.
EPSS Metriken
Typ Quelle Score Percentile
EPSS FIRST.org 0.26% 0.178
CVSS Metriken
Quelle Base Score Exploit Score Impact Score Vector String
134c704f-9b21-4f2e-91b3-4a467353bcc0 7.8 1.8 5.9
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE-416 Use After Free

The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.

https://git.kernel.org/stable/c/36c644c63bfcaee2d3a426f45e89a9cd09799318
Patch
https://git.kernel.org/stable/c/390d82733a953c1fabf3de9c9618091a7a9c90a6
Patch
https://git.kernel.org/stable/c/537f619dea4e3fa8ed1f8f938abffe3615794bcc
Patch
https://git.kernel.org/stable/c/65d347cb39e2e6bd0c2a745ad7c928998ebb0162
Patch
https://git.kernel.org/stable/c/6f55fac0af3531cf60d11369454c41f5fc81ab3f
Patch
https://git.kernel.org/stable/c/7aa1e7d15f8a5b65f67bacb100d8fc033b21efa2
Patch
https://git.kernel.org/stable/c/7d61dbd7311ab978d8ddac1749a758de4de00374
Patch
https://git.kernel.org/stable/c/99df16007f4bbf9abfc3478cb17d10f0d7f8906e
Patch
https://git.kernel.org/stable/c/9de3dc09e56f8deacd2bdbf4cecb71e11a312405
Patch