First published: Thu May 23 2024(Updated: )
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: L2CAP: Fix slab-use-after-free in l2cap_connect() Extend a critical section to prevent chan from early freeing. Also make the l2cap_connect() return type void. Nothing is using the returned value but it is ugly to return a potentially freed pointer. Making it void will help with backports because earlier kernels did use the return value. Now the compile will break for kernels where this patch is not a complete fix. Call stack summary: [use] l2cap_bredr_sig_cmd l2cap_connect ┌ mutex_lock(&conn->chan_lock); │ chan = pchan->ops->new_connection(pchan); <- alloc chan │ __l2cap_chan_add(conn, chan); │ l2cap_chan_hold(chan); │ list_add(&chan->list, &conn->chan_l); ... (1) └ mutex_unlock(&conn->chan_lock); chan->conf_state ... (4) <- use after free [free] l2cap_conn_del ┌ mutex_lock(&conn->chan_lock); │ foreach chan in conn->chan_l: ... (2) │ l2cap_chan_put(chan); │ l2cap_chan_destroy │ kfree(chan) ... (3) <- chan freed └ mutex_unlock(&conn->chan_lock); ================================================================== BUG: KASAN: slab-use-after-free in instrument_atomic_read include/linux/instrumented.h:68 [inline] BUG: KASAN: slab-use-after-free in _test_bit include/asm-generic/bitops/instrumented-non-atomic.h:141 [inline] BUG: KASAN: slab-use-after-free in l2cap_connect+0xa67/0x11a0 net/bluetooth/l2cap_core.c:4260 Read of size 8 at addr ffff88810bf040a0 by task kworker/u3:1/311
Credit: 416baaa9-dc9f-4396-8d5f-8c081fb06d67 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Software | Affected Version | How to fix |
---|---|---|
Linux Kernel | >=3.0<6.6.32 | |
Linux Kernel | >=6.7<6.8.11 | |
Linux Kernel | =6.9-rc1 | |
Linux Kernel | =6.9-rc2 | |
Linux Kernel | =6.9-rc3 | |
Linux Kernel | =6.9-rc4 | |
Linux Kernel | =6.9-rc5 | |
Linux Kernel | =6.9-rc6 | |
Linux Kernel | =6.9-rc7 | |
debian/linux | <=5.10.223-1<=5.10.234-1<=6.1.129-1<=6.1.128-1 | 6.12.21-1 6.12.22-1 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2024-36013 has been assessed with a high severity level due to potential exploitation leading to memory corruption.
To fix CVE-2024-36013, update your Linux kernel to version 6.12.10-1 or 6.12.11-1 if you are using affected Debian packages.
CVE-2024-36013 affects Linux kernel versions up to and including 5.10.226-1 and 6.1.123-1.
CVE-2024-36013 addresses a slab-use-after-free vulnerability in the Bluetooth L2CAP implementation.
There is no known workaround for CVE-2024-36013, so upgrading the kernel is the recommended action.