What’s Vulnerable › Vulnerabilities
CVE-2023-53016: Bluetooth: Fix possible deadlock in rfcomm_sk_state_change
- Severity: medium (CVSS 5.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-03-27 · updated 2026-06-17
- Weakness: CWE-416
Description
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: Fix possible deadlock in rfcomm_sk_state_change syzbot reports a possible deadlock in rfcomm_sk_state_change [1]. While rfcomm_sock_connect acquires the sk lock and waits for the rfcomm lock, rfcomm_sock_release could have the rfcomm lock and hit a deadlock for acquiring the sk lock. Here's a simplified flow: rfcomm_sock_connect: lock_sock(sk) rfcomm_dlc_open: rfcomm_lock() rfcomm_sock_release: rfcomm_sock_shutdown: rfcomm_lock() __rfcomm_dlc_close: rfcomm_k_state_change: lock_sock(sk) This patch drops the sk lock before calling rfcomm_dlc_open to avoid the possible deadlock and holds sk's reference count to prevent use-after-free after rfcomm_dlc_open completes.
Affected products
- Linux kernel: from 5.15 before 5.15.91; from 5.16 before 6.1.9; 6.2-rc1, 6.2-rc2, 6.2-rc3, 6.2-rc4 — fixed in 5.15.91, 6.1.9
How to fix
Upgrade to a fixed version: Linux kernel 5.15.91, 6.1.9. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/17511bd84871f4a6106cb335616e086880313f3f
- https://git.kernel.org/stable/c/1d80d57ffcb55488f0ec0b77928d4f82d16b6a90
- https://git.kernel.org/stable/c/98aec50ff7f60cc6f2d6a4396b475c547e58b04d
Get alerted when CVE-2023-53016 or the next vulnerability affects your stack