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

Bluetooth: Serialize SMP remote OOB data access

build_pairing_cmd() looks up remote OOB data and copies its contents
without holding hdev->lock, which serializes the list's writers. After
SMP finds an entry, a concurrent management Remove Remote OOB Data
command can unlink and free it before SMP reads its present flag or
copies its random and confirmation values. Removal can also invalidate
an entry while the lookup is still traversing the list.

KASAN reported:

BUG: KASAN: slab-use-after-free in build_pairing_cmd+0x948/0x9b0
Call Trace:
build_pairing_cmd+0x948/0x9b0
smp_recv_cb+0x459f/0x8110
l2cap_recv_frame+0xf14/0x9190
l2cap_recv_acldata+0xa64/0xd40
hci_rx_work+0x4ca/0x730

Allocated by task 87:
hci_add_remote_oob_data+0x11d/0x530
add_remote_oob_data+0x282/0x400
hci_sock_sendmsg+0x1033/0x1ea0

Freed by task 93:
hci_remote_oob_data_clear+0x108/0x1c0
remove_remote_oob_data+0x198/0x220
hci_sock_sendmsg+0x1033/0x1ea0

Taking hdev->lock in build_pairing_cmd() would recurse for callers that
already hold it and invert the device-to-L2CAP lock order on the receive
path. Add a per-device remote_oob_lock instead, held across the SMP
lookup and copies and by the add, remove and clear helpers. Cover
initialization and in-place updates as well, so SMP cannot read partially
initialized or updated OOB values. Release the mutex on allocation
failure, preserving the existing error return.

The new critical sections acquire no device, connection or channel locks.
Writers retain their existing hdev->lock protection, which continues to
serialize the other readers without changing their locking or behavior.
Published: 2026-10-18
Score: 5.1 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Use-after-free that may lead to arbitrary code execution
Action: Immediate Patch
AI Analysis

Impact

In Linux kernel Bluetooth, the build_pairing_cmd function accesses remote out-of-band data without holding the required device lock. This race condition allows a concurrent remove or clear operation to free the data structure while SMP is still reading it, leading to a use‑after‑free condition that can corrupt memory and potentially allow arbitrary code execution.

Affected Systems

The vulnerability affects all Linux kernel versions that include the legacy Bluetooth stack. The affected component is the Bluetooth SMP module, which handles pairing commands that utilize remote OOB data. No specific kernel release is listed, so any installed kernel that has not received the downstream fix is potentially vulnerable.

Risk and Exploitability

The CVSS score is 5.1, indicating moderate severity, and the EPSS score is <1%, indicating a low likelihood of exploitation. No public exploit has been reported and the vulnerability is not listed in the CISA KEV catalogue. However, the use‑after‑free race can lead to memory corruption that an attacker could leverage for denial‑of‑service or execution of arbitrary code, especially if the bug is triggered in a privileged context or when the kernel processes incoming Bluetooth traffic from an untrusted device. The lack of a full lock hierarchy means the patch introduces a new per-device mutex to serialise access, reducing the likelihood of successful exploitation.

Generated by OpenCVE AI on October 22, 2026 at 20:36 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel patch that implements a per‑device remote_oob_lock and removes the race condition in build_pairing_cmd, using the commit references from the kernel Git repositories.
  • If the patch cannot be applied immediately, disable Bluetooth OOB data handling or turn off Bluetooth entirely to eliminate the attack surface while awaiting the fix.
  • Configure kernel logging to alert on KASAN or panic events, so you can detect if the vulnerability is being exploited while the fix is pending.

Generated by OpenCVE AI on October 22, 2026 at 20:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4850-1 linux-6.12 security update
History

Wed, 21 Oct 2026 13:15:00 +0000


Wed, 21 Oct 2026 12:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.1, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Sun, 18 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: Bluetooth: Serialize SMP remote OOB data access build_pairing_cmd() looks up remote OOB data and copies its contents without holding hdev->lock, which serializes the list's writers. After SMP finds an entry, a concurrent management Remove Remote OOB Data command can unlink and free it before SMP reads its present flag or copies its random and confirmation values. Removal can also invalidate an entry while the lookup is still traversing the list. KASAN reported: BUG: KASAN: slab-use-after-free in build_pairing_cmd+0x948/0x9b0 Call Trace: build_pairing_cmd+0x948/0x9b0 smp_recv_cb+0x459f/0x8110 l2cap_recv_frame+0xf14/0x9190 l2cap_recv_acldata+0xa64/0xd40 hci_rx_work+0x4ca/0x730 Allocated by task 87: hci_add_remote_oob_data+0x11d/0x530 add_remote_oob_data+0x282/0x400 hci_sock_sendmsg+0x1033/0x1ea0 Freed by task 93: hci_remote_oob_data_clear+0x108/0x1c0 remove_remote_oob_data+0x198/0x220 hci_sock_sendmsg+0x1033/0x1ea0 Taking hdev->lock in build_pairing_cmd() would recurse for callers that already hold it and invert the device-to-L2CAP lock order on the receive path. Add a per-device remote_oob_lock instead, held across the SMP lookup and copies and by the add, remove and clear helpers. Cover initialization and in-place updates as well, so SMP cannot read partially initialized or updated OOB values. Release the mutex on allocation failure, preserving the existing error return. The new critical sections acquire no device, connection or channel locks. Writers retain their existing hdev->lock protection, which continues to serialize the other readers without changing their locking or behavior.
Title Bluetooth: Serialize SMP remote OOB data access
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-21T12:56:14.531Z

Reserved: 2026-09-25T10:25:14.367Z

Link: CVE-2026-98738

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T16:17:27.477

Modified: 2026-10-21T13:21:41.040

Link: CVE-2026-98738

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-18T15:47:21Z

Links: CVE-2026-98738 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T20:45:05Z

Weaknesses