CVE-2026-64404
Medium · 5.5CVSS
5.5
EPSS
0.1%
Published
Jul 25, 2026
CISA due date
—
Cloudanix analysis
A Bluetooth software bug in some Linux systems can cause the device to crash if a connection is torn down at the wrong moment.
- Exploitation
- Local Privilege
- Attacker needs
- Local User
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Race Condition
- Remediation
- Patch
- Effort
- Low
- Patch risk
- Low
What it actually does
This is a race condition in the Linux kernel Bluetooth ISO socket handling path. The vulnerable function temporarily releases a socket lock while resolving a Bluetooth HCI route, then reacquires the lock and dereferences iso_pi(sk)->conn->hcon without confirming that the connection object still exists. If a Bluetooth ISO connection teardown occurs during that unlocked window, iso_pi(sk)->conn or its hcon member can be cleared, leading to a NULL pointer dereference in kernel context. The most likely technical outcome is a kernel oops or system crash, resulting in local or proximity-triggered denial of service on systems with the affected Bluetooth ISO functionality enabled.
Why it matters to the business
Successful exploitation can crash affected Linux systems or disrupt Bluetooth-dependent services, causing availability loss for workstations, embedded Linux devices, kiosks, IoT/edge systems, or servers that expose Bluetooth functionality. The current public risk appears limited: the issue is not listed in CISA KEV, is not known to be used in ransomware campaigns, has low EPSS probability, and has no reported mature exploit. However, organizations with Linux systems that rely on Bluetooth Low Energy audio, broadcast audio, or controller-driven Bluetooth workflows should treat this as an availability risk and patch during the next appropriate kernel maintenance cycle.
How an attack unfolds
An attacker or local process causes the system to enter the Bluetooth ISO PA-sync broadcast sink receive path, which reaches iso_sock_recvmsg() and then iso_conn_big_sync(). During that operation, the kernel drops the socket lock to call hci_get_route(). In the short interval before the lock is reacquired, a Bluetooth controller event or teardown path can delete the ISO connection and clear the socket's connection pointer. When iso_conn_big_sync() resumes, the vulnerable kernel dereferences the stale or NULL connection pointer without revalidation, triggering a NULL pointer dereference in kernel space. In practical terms, exploitation is expected to require Bluetooth ISO support, a reachable Bluetooth/controller state that can trigger teardown timing, and the ability to exercise the relevant socket path; the expected impact is denial of service rather than data theft or code execution.
How to fix it
Upgrade to a Linux kernel version that includes the upstream fix for the Bluetooth ISO iso_conn_big_sync() revalidation bug. If using a distribution kernel, install the vendor-supplied kernel security update rather than attempting to backport manually. Because no exact affected product list or fixed package versions were provided, verify remediation through the Linux distribution's security advisories and kernel changelog for the patch that revalidates iso_pi(sk)->conn and conn->hcon after reacquiring the socket lock in iso_conn_big_sync(). Where immediate patching is not possible, reduce exposure by disabling Bluetooth on systems that do not require it, blocking or removing Bluetooth adapters, unloading Bluetooth-related kernel modules where operationally safe, and limiting local user access to Bluetooth socket capabilities according to distribution policy.
How to confirm the fix worked
Confirm the running kernel includes the fix by checking the installed kernel package version against the relevant distribution advisory or by verifying that the kernel source contains the added revalidation of iso_pi(sk)->conn and its hcon member after the lock is reacquired in net/bluetooth/iso.c. Confirm exposure reduction by verifying Bluetooth is disabled or unavailable on systems that do not need it. On Linux hosts, useful checks include reviewing the running kernel version with uname -a, installed kernel package metadata through the platform package manager, loaded Bluetooth modules with lsmod, Bluetooth adapter state with bluetoothctl or rfkill, and kernel logs for absence of recurring Bluetooth ISO oops traces after remediation.
Typical attack path
- Identify a Linux system with Bluetooth enabled and kernel support for Bluetooth ISO sockets.
- Create or induce a Bluetooth ISO PA-sync broadcast sink socket state that reaches the deferred setup receive path.
- Trigger iso_sock_recvmsg(), causing execution to enter iso_conn_big_sync().
- Race the lock drop in iso_conn_big_sync() with a Bluetooth ISO connection teardown or controller event that clears iso_pi(sk)->conn or conn->hcon.
- Cause the kernel to dereference the now-NULL connection pointer.
- Observe a kernel oops, Bluetooth subsystem failure, or full system crash/reboot.
How to detect it
To determine whether this issue may have already been triggered, review host kernel logs, persistent journal entries, crash dumps, and system reboot records for Bluetooth ISO-related kernel oops events. Relevant log sources include dmesg output, /var/log/kern.log, /var/log/messages, /var/log/syslog, systemd-journald kernel logs, kdump/vmcore artifacts, pstore/ramoops records on embedded systems, and EDR telemetry that captures kernel panic or unexpected reboot events. Focus on crashes that mention NULL pointer dereference, general protection fault, kernel oops, or panic with stack frames involving iso_conn_big_sync(), iso_sock_recvmsg(), iso_disconn_cfm(), iso_conn_del(), iso_chan_del(), or net/bluetooth/iso.c. Also correlate crashes with Bluetooth controller disconnect events, Bluetooth service activity, HCI errors, or nearby testing of Bluetooth LE audio/broadcast functionality. There are no known threat actors or public exploitation campaigns associated with this vulnerability at this time, so detection should focus on crash forensics and recurrence patterns rather than network indicators.
- iso_conn_big_sync
- iso_sock_recvmsg
- iso_disconn_cfm
- iso_conn_del
- iso_chan_del
- net/bluetooth/iso.c
- Bluetooth: ISO
- BUG: kernel NULL pointer dereference
- Oops: 0000
- Kernel panic - not syncing
- Unable to handle kernel NULL pointer dereference
- general protection fault
- Bluetooth: hci
- /var/log/kern.log
- /var/log/messages
- /var/log/syslog
- /sys/fs/pstore
- /var/crash
- vmcore
- kdump
What your security team should do
- Inventory Linux systems with Bluetooth enabled, prioritizing laptops, embedded devices, kiosks, IoT/edge appliances, and systems using Bluetooth LE audio or broadcast audio features.
- Apply vendor kernel updates that include the Bluetooth ISO fix during the next maintenance window; prioritize systems where Bluetooth is enabled and locally or physically accessible.
- Disable Bluetooth on systems where it is not operationally required, especially production servers and unattended devices.
- Monitor kernel logs for Bluetooth ISO-related oops or NULL pointer dereference traces, particularly references to iso_conn_big_sync(), iso_sock_recvmsg(), iso_disconn_cfm(), iso_conn_del(), or iso_chan_del().
- Treat unexpected crashes on Bluetooth-enabled Linux systems as potentially relevant until kernel logs or crash dumps rule out this bug.
- Because there is no KEV listing, no known ransomware use, low EPSS, and no mature public exploit, prioritize based on Bluetooth exposure and availability requirements rather than emergency internet-facing patch criteria.
The record
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: ISO: avoid NULL deref of conn in iso_conn_big_sync() iso_conn_big_sync() drops the socket lock to call hci_get_route() and then re-acquires it, but dereferences iso_pi(sk)->conn->hcon afterwards without re-checking that conn is still valid. While the lock is dropped, the connection can be torn down under the same socket lock: iso_disconn_cfm() -> iso_conn_del() -> iso_chan_del() sets iso_pi(sk)->conn to NULL (and the broadcast teardown path can also clear conn->hcon on its own). When iso_conn_big_sync() re-acquires the lock and reads conn->hcon, conn may be NULL, causing a NULL pointer dereference (hcon is the first member of struct iso_conn). This path is reached from iso_sock_recvmsg() for a PA-sync broadcast sink socket (BT_SK_DEFER_SETUP | BT_SK_PA_SYNC), so the dropped-lock window can race with connection teardown driven by controller events. Re-validate iso_pi(sk)->conn and its hcon after re-acquiring the socket lock and bail out if the connection went away, as already done in the sibling iso_sock_rebind_bc().
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-112405 Pillow is a Python imaging library. CWE-476
- CVE-2026-112392 Pillow is a Python imaging library. CWE-476
- CVE-2026-100348 kin-openapi is a Go project for handling OpenAPI files. CWE-476
- CVE-2026-100349 kin-openapi is a Go project for handling OpenAPI files. CWE-476
- CVE-2026-109280 ImageMagick 7.1.0-20 before 7.1.2-32 contains a use after free vulnerability in the -fx… CWE-476
- CVE-2026-109272 ImageMagick 7.1.1-31 before 7.1.2-32 contains a NULL pointer dereference in the… CWE-476
- CVE-2026-109258 ImageMagick 7.1.0-20 before 7.1.2-32 contains an invalid memory free vulnerability in the… CWE-476
- CVE-2026-107655 A flaw was found in CUPS. CWE-476