[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2025022603-CVE-2022-49474-ce0b@gregkh>
Date: Wed, 26 Feb 2025 03:12:28 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: CVE-2022-49474: Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout
Description
===========
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
The Linux kernel CVE team has assigned CVE-2022-49474 to this issue.
Affected and fixed versions
===========================
Issue introduced in 4.9.283 with commit 22c66af08230a7030bdb88accffaec3424695631 and fixed in 4.9.318 with commit 9de3dc09e56f8deacd2bdbf4cecb71e11a312405
Issue introduced in 4.14.247 with commit 0115a66ebb44bd9127ccb58cf43ed23c795eb1f0 and fixed in 4.14.283 with commit 7d61dbd7311ab978d8ddac1749a758de4de00374
Issue introduced in 4.19.207 with commit bc4b08383046f3282b6fa58cfcef05bd13e52b93 and fixed in 4.19.247 with commit 390d82733a953c1fabf3de9c9618091a7a9c90a6
Issue introduced in 5.4.146 with commit 5ccb04c6e1fb7b97fa2e1785b67c3a1cb3527ef7 and fixed in 5.4.198 with commit 6f55fac0af3531cf60d11369454c41f5fc81ab3f
Issue introduced in 5.10.65 with commit 059c2c09f4b7f97711d0d8eaa0b9877f5e7d0a75 and fixed in 5.10.121 with commit 36c644c63bfcaee2d3a426f45e89a9cd09799318
Issue introduced in 5.15 with commit e1dee2c1de2b4dd00eb44004a4bda6326ed07b59 and fixed in 5.15.46 with commit 65d347cb39e2e6bd0c2a745ad7c928998ebb0162
Issue introduced in 5.15 with commit e1dee2c1de2b4dd00eb44004a4bda6326ed07b59 and fixed in 5.17.14 with commit 537f619dea4e3fa8ed1f8f938abffe3615794bcc
Issue introduced in 5.15 with commit e1dee2c1de2b4dd00eb44004a4bda6326ed07b59 and fixed in 5.18.3 with commit 99df16007f4bbf9abfc3478cb17d10f0d7f8906e
Issue introduced in 5.15 with commit e1dee2c1de2b4dd00eb44004a4bda6326ed07b59 and fixed in 5.19 with commit 7aa1e7d15f8a5b65f67bacb100d8fc033b21efa2
Issue introduced in 4.4.284 with commit 98ae477ed1540d3acbbf44d88ee237ad64275158
Issue introduced in 5.13.17 with commit f0c389e23e2475e5837716a629c81b7a9d90cc94
Issue introduced in 5.14.4 with commit 0b9da4bde0d59c61b3675bdd80a05a726beb875a
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2022-49474
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
net/bluetooth/sco.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/9de3dc09e56f8deacd2bdbf4cecb71e11a312405
https://git.kernel.org/stable/c/7d61dbd7311ab978d8ddac1749a758de4de00374
https://git.kernel.org/stable/c/390d82733a953c1fabf3de9c9618091a7a9c90a6
https://git.kernel.org/stable/c/6f55fac0af3531cf60d11369454c41f5fc81ab3f
https://git.kernel.org/stable/c/36c644c63bfcaee2d3a426f45e89a9cd09799318
https://git.kernel.org/stable/c/65d347cb39e2e6bd0c2a745ad7c928998ebb0162
https://git.kernel.org/stable/c/537f619dea4e3fa8ed1f8f938abffe3615794bcc
https://git.kernel.org/stable/c/99df16007f4bbf9abfc3478cb17d10f0d7f8906e
https://git.kernel.org/stable/c/7aa1e7d15f8a5b65f67bacb100d8fc033b21efa2
Powered by blists - more mailing lists