---
id: CVE-2026-23461
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  Bluetooth: L2CAP: Fix use-after-free in l2cap_unregister_user

  After commit ab4eedb790ca ("Bluetooth: L2CAP: Fix corrupted list in
  hci_chan_del"), l2cap_conn_del() uses…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  Bluetooth: L2CAP: Fix use-after-free in l2cap_unregister_user

  After commit ab4eedb790ca ("Bluetooth: L2CAP: Fix corrupted list in
  hci_chan_del"), l2cap_conn_del() uses…
severity: high
cvss: 8.8
cvssVector: 'CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-416
vendor: linux
product: linux_kernel
affected:
  - 'linux_kernel >= 6.6.84, < 6.6.130'
  - 'linux_kernel >= 6.12.20, < 6.12.78'
  - 'linux_kernel >= 6.13.8, < 6.14'
  - 'linux_kernel >= 6.14.1, < 6.18.20'
  - 'linux_kernel >= 6.19, < 6.19.10'
  - linux_kernel = 6.14
  - linux_kernel = 7.0
patched:
  - linux_kernel 6.19.10
published: '2026-04-03'
updated: '2026-07-24'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-23461'
references:
  - url: 'https://git.kernel.org/stable/c/11a87dd5df428a4b79a84d2790cac7f3c73f1f0d'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/71030f3b3015a412133a805ff47970cdcf30c2b8'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/752a6c9596dd25efd6978a73ff21f3b592668f4a'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/c22a5e659959eb77c2fbb58a5adfaf3c3dab7abf'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/da3000cbe4851458a22be38bb18c0689c39fdd5f'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
epss: 0.00247
epssPercentile: 0.1635
ingestedAt: '2026-07-25T22:05:03.545Z'
---

## Overview

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

Bluetooth: L2CAP: Fix use-after-free in l2cap_unregister_user

After commit ab4eedb790ca ("Bluetooth: L2CAP: Fix corrupted list in
hci_chan_del"), l2cap_conn_del() uses conn->lock to protect access to
conn->users. However, l2cap_register_user() and l2cap_unregister_user()
don't use conn->lock, creating a race condition where these functions can
access conn->users and conn->hchan concurrently with l2cap_conn_del().

This can lead to use-after-free and list corruption bugs, as reported
by syzbot.

Fix this by changing l2cap_register_user() and l2cap_unregister_user()
to use conn->lock instead of hci_dev_lock(), ensuring consistent locking
for the l2cap_conn structure.

## Affected

- `linux_kernel >= 6.6.84, < 6.6.130`
- `linux_kernel >= 6.12.20, < 6.12.78`
- `linux_kernel >= 6.13.8, < 6.14`
- `linux_kernel >= 6.14.1, < 6.18.20`
- `linux_kernel >= 6.19, < 6.19.10`
- `linux_kernel = 6.14`
- `linux_kernel = 7.0`

## Remediation

Upgrade past the affected range:

- `linux_kernel 6.19.10`
