🛡️ CVE-2025-39982 — kernel

🟠 CVSS 8.8 — High ✅ No Known Exploit NVD
8.8
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

Bluetooth: hci_event: Fix UAF in hci_acl_create_conn_sync

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

Bluetooth: hci_event: Fix UAF in hci_acl_create_conn_sync

This fixes the following UFA in hci_acl_create_conn_sync where a

connection still pending is command submission (conn->state == BT_OPEN)

maybe freed, also since this also can happen with the likes of

hci_le_create_conn_sync fix it as well:

BUG: KASAN: slab-use-after-free in hci_acl_create_conn_sync+0x5ef/0x790 net/bluetooth/hci_sync.c:6861

Write of size 2 at addr ffff88805ffcc038 by task kworker/u11:2/9541

CPU: 1 UID: 0 PID: 9541 Comm: kworker/u11:2 Not tainted 6.16.0-rc7 #3 PREEMPT(full)

Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1 04/01/2014

Workqueue: hci3 hci_cmd_sync_work

Call Trace:

<TASK>

dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120

print_address_description mm/kasan/report.c:378 [inline]

print_report+0xca/0x230 mm/kasan/report.c:480

kasan_report+0x118/0x150 mm/kasan/report.c:593

hci_acl_create_conn_sync+0x5ef/0x790 net/bluetooth/hci_sync.c:6861

hci_cmd_sync_work+0x210/0x3a0 net/bluetooth/hci_sync.c:332

process_one_work kernel/workqueue.c:3238 [inline]

process_scheduled_works+0xae1/0x17b0 kernel/workqueue.c:3321

worker_thread+0x8a0/0xda0 kernel/workqueue.c:3402

kthread+0x70e/0x8a0 kernel/kthread.c:464

ret_from_fork+0x3fc/0x770 arch/x86/kernel/process.c:148

ret_from_fork_asm+0x1a/0x30 home/kwqcheii/source/fuzzing/kernel/kasan/linux-6.16-rc7/arch/x86/entry/entry_64.S:245

</TASK>

Allocated by task 123736:

kasan_save_stack mm/kasan/common.c:47 [inline]

kasan_save_track+0x3e/0x80 mm/kasan/common.c:68

poison_kmalloc_redzone mm/kasan/common.c:377 [inline]

__kasan_kmalloc+0x93/0xb0 mm/kasan/common.c:394

kasan_kmalloc include/linux/kasan.h:260 [inline]

__kmalloc_cache_noprof+0x230/0x3d0 mm/slub.c:4359

kmalloc_noprof include/linux/slab.h:905 [inline]

kzalloc_noprof include/linux/slab.h:1039 [inline]

__hci_conn_add+0x233/0x1b30 net/bluetooth/hci_conn.c:939

hci_conn_add_unset net/bluetooth/hci_conn.c:1051 [inline]

hci_connect_acl+0x16c/0x4e0 net/bluetooth/hci_conn.c:1634

pair_device+0x418/0xa70 net/bluetooth/mgmt.c:3556

hci_mgmt_cmd+0x9c9/0xef0 net/bluetooth/hci_sock.c:1719

hci_sock_sendmsg+0x6ca/0xef0 net/bluetooth/hci_sock.c:1839

sock_sendmsg_nosec net/socket.c:712 [inline]

__sock_sendmsg+0x219/0x270 net/socket.c:727

sock_write_iter+0x258/0x330 net/socket.c:1131

new_sync_write fs/read_write.c:593 [inline]

vfs_write+0x54b/0xa90 fs/read_write.c:686

ksys_write+0x145/0x250 fs/read_write.c:738

do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]

do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94

entry_SYSCALL_64_after_hwframe+0x77/0x7f

Freed by task 103680:

kasan_save_stack mm/kasan/common.c:47 [inline]

kasan_save_track+0x3e/0x80 mm/kasan/common.c:68

kasan_save_free_info+0x46/0x50 mm/kasan/generic.c:576

poison_slab_object mm/kasan/common.c:247 [inline]

__kasan_slab_free+0x62/0x70 mm/kasan/common.c:264

kasan_slab_free include/linux/kasan.h:233 [inline]

slab_free_hook mm/slub.c:2381 [inline]

slab_free mm/slub.c:4643 [inline]

kfree+0x18e/0x440 mm/slub.c:4842

device_release+0x9c/0x1c0

kobject_cleanup lib/kobject.c:689 [inline]

kobject_release lib/kobject.c:720 [inline]

kref_put include/linux/kref.h:65 [inline]

kobject_put+0x22b/0x480 lib/kobject.c:737

hci_conn_cleanup net/bluetooth/hci_conn.c:175 [inline]

hci_conn_del+0x8ff/0xcb0 net/bluetooth/hci_conn.c:1173

hci_conn_complete_evt+0x3c7/0x1040 net/bluetooth/hci_event.c:3199

hci_event_func net/bluetooth/hci_event.c:7477 [inline]

hci_event_packet+0x7e0/0x1200 net/bluetooth/hci_event.c:7531

hci_rx_work+0x46a/0xe80 net/bluetooth/hci_core.c:4070

process_one_work kernel/workqueue.c:3238 [inline]

process_scheduled_works+0xae1/0x17b0 kernel/workqueue.c:3321

worker_thread+0x8a0/0xda0 kernel/workqueue.c:3402

kthread+0x70e/0x8a0 kernel/kthread.c:464

ret_from_fork+0x3fc/0x770 arch/x86/kernel/process.c:148

ret_from_fork_asm+0x1a/0x30 home/kwqcheii/sour

---truncated---

How this vulnerability can be exploited

This issue can be reached from an adjacent network, attack complexity is low, an attacker needs no privileges on the target. No user interaction is required. The scope is unchanged, so the impact stays within the vulnerable component. Rated impact: confidentiality high, integrity high, availability high.

Affected software

CVE-2025-39982 is recorded against 2 packages.

  • kernel (from 6.13.0 up to 6.16.10)
  • unknown

Timeline and source

Published on 15 October 2025 and last revised on 6 August 2026. No public exploit is currently recorded for this entry. Record sourced from NVD.

References

git.kernel.org (Web)
git.kernel.org (Web)
git.kernel.org (Web)
git.kernel.org (Web)
git.kernel.org (Web)
github.com (Advisory)
nvd.nist.gov (Advisory)
git.kernel.org (Package)

CVE-2025-39982 on other distributions

Each distribution ships its own build and its own fixed version. Pick the one you run:

Details

Severity High
CVSS Score 8.8
CVSS Vector CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CWE N/A
Public Exploit ✅ No
Source NVD
Published 2025-10-15
Updated 2026-08-12
Modified 2026-08-06
Fix URL N/A

Affected Packages

Software From version Fixed in
kernel 6.13.0 6.16.10
unknown

Similar Threats

Site Security Check

Is kernel part of your stack?

CVE-2025-39982 is rated CVSS 8.8 High. BotEraser scans your installation against known CVE records and tells you whether this vulnerability applies to the versions you actually run.

Scan My Site Free →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.