CVE-2026-46111CWE-416

CVE-2026-46111

High · published May 28, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
6.2
In the wild
Unconfirmed
What it is

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

Bluetooth: hci_conn: fix potential UAF in create_big_sync

Add hci_conn_valid() check in create_big_sync() to detect stale

connections before proceeding with BIG creation. Handle the

resulting -ECANCELED in create_big_complete() and re-validate the

connection under hci_dev_lock() before dereferencing, matching the

pattern used by create_le_conn_complete() and create_pa_complete().

Keep the hci_conn object alive across the async boundary by taking

a reference via hci_conn_get() when queueing create_big_sync(), and

dropping it in the completion callback. The refcount and the lock

are complementary: the refcount keeps the object allocated, while

hci_dev_lock() serializes hci_conn_hash_del()'s list_del_rcu() on

hdev->conn_hash, as required by hci_conn_del().

hci_conn_put() is called outside hci_dev_unlock() so the final put

(which resolves to kfree() via bt_link_release) does not run under

hdev->lock, though the release path would be safe either way.

Without this, create_big_complete() would unconditionally

dereference the conn pointer on error, causing a use-after-free

via hci_connect_cfm() and hci_conn_del().

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00171 · 6.2th percentile
Weakness
CWE-416 · Use After Free
Published
2026-05-28T14:16Z
Affected products (6)
ProductVersionsFixed in
linux/linux_kernel≥ 6.0, < 6.6.1406.6.140
linux/linux_kernel≥ 6.7, < 6.12.906.12.90
linux/linux_kernel≥ 6.13, < 6.18.326.18.32
linux/linux_kernel≥ 6.19, < 7.0.77.0.7
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (6)
EPSS history
Timeline
  • 28 MAY 09:35Z
    Bluetooth: hci_conn: fix potential UAF in create_big_sync
    cvelistv5