CVE-2025-68305

Bluetooth: hci_sock: Prevent race in socket write iter and sock bind

State
Published
Severity
Not scored
Published
Dec 16, 2025
Updated
Aug 23, 2026
Reserved
Dec 16, 2025

Read the record on cve.org

Description

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

Bluetooth: hci_sock: Prevent race in socket write iter and sock bind

There is a potential race condition between sock bind and socket write iter. bind may free the same cmd via mgmt_pending before write iter sends the cmd, just as syzbot reported in UAF[1].

Here we use hci_dev_lock to synchronize the two, thereby avoiding the UAF mentioned in [1].

[1] syzbot reported: BUG: KASAN: slab-use-after-free in mgmt_pending_remove+0x3b/0x210 net/bluetooth/mgmt_util.c:316 Read of size 8 at addr ffff888077164818 by task syz.0.17/5989 Call Trace: mgmt_pending_remove+0x3b/0x210 net/bluetooth/mgmt_util.c:316 set_link_security+0x5c2/0x710 net/bluetooth/mgmt.c:1918 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:727 [inline] __sock_sendmsg+0x21c/0x270 net/socket.c:742 sock_write_iter+0x279/0x360 net/socket.c:1195

Allocated by task 5989: mgmt_pending_add+0x35/0x140 net/bluetooth/mgmt_util.c:296 set_link_security+0x557/0x710 net/bluetooth/mgmt.c:1910 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:727 [inline] __sock_sendmsg+0x21c/0x270 net/socket.c:742 sock_write_iter+0x279/0x360 net/socket.c:1195

Freed by task 5991: mgmt_pending_free net/bluetooth/mgmt_util.c:311 [inline] mgmt_pending_foreach+0x30d/0x380 net/bluetooth/mgmt_util.c:257 mgmt_index_removed+0x112/0x2f0 net/bluetooth/mgmt.c:9477 hci_sock_bind+0xbe9/0x1000 net/bluetooth/hci_sock.c:1314

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 7b5958332f20dc66b19be564c402dbc21b927a81 to before 7344feaed3c8aa46d397984ae855e6026d3c3e95Affected
  • bdd56875c6926d8009914f427df71797693e90d4 to before fe68510fc99bb4b88c9c611f83699749002d515aAffected
  • 4e83f2dbb2bf677e614109df24426c4dded472d4 to before e90c05fc5bbea956450a05cc3b36b8fa29cf195eAffected
  • 6fe26f694c824b8a4dbf50c635bee1302e3f099c to before 69fcb0344bc0dd5b13d7e4e98f8b6bf25a6d4ff7Affected
  • 6fe26f694c824b8a4dbf50c635bee1302e3f099c to before 89bb613511cc21ed5ba6bddc1c9b9ae9c0dad392Affected
  • d7882db79135c829a922daf3571f33ea1e056ae3Affected
  • 6.6.94 to before 6.6.119Affected
  • 6.12.34 to before 6.12.61Affected
  • 6.15.3 to before 6.16Affected
LinuxLinux
  • 6.16Affected
  • before 6.16Not affected
  • 6.6.119 through 6.6.*Not affected
  • 6.12.61 through 6.12.*Not affected
  • 6.17.11 through 6.17.*Not affected
  • 6.18 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.