CVE-2023-51589
Medium · 5.4CVSS
5.4
EPSS
0.8%
Published
May 3, 2024
CISA due date
—
Cloudanix analysis
A problem in how Bluetooth handles certain music-control messages could let a nearby attacker peek at private information on your device if you connect to their fake speaker or headset.
- Exploitation
- Adjacent Network
- Attacker needs
- User Interaction
- Complexity
- High
- Impact
- Data Exposure
- Component
- Library
- Class
- Information Disclosure
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Out-of-bounds read in AVRCP media element parsing allows disclosure of adjacent memory contents over Bluetooth without authentication.
Why it matters to the business
Nearby attackers can obtain sensitive data from affected systems; older unpatched deployments increase exposure window given nearly three years since disclosure.
How an attack unfolds
An attacker configures a malicious Bluetooth device advertising AVRCP services; when a victim device initiates pairing or connection, malformed media element data triggers the out-of-bounds read, leaking memory that may aid further exploitation toward root-level code execution when chained.
How to fix it
Upgrade googlecloudplatform/esp-v2 to commit 0bcdfc024ce96b34db4e1b4f2211b509d9be93cd; verify Bluetooth stack components are rebuilt against the patched source.
How to confirm the fix worked
Confirm running binary or container image contains the 0bcdfc024ce96b34db4e1b4f2211b509d9be93cd commit; test AVRCP parsing with malformed media elements to ensure no out-of-bounds access occurs.
Typical attack path
- Position malicious Bluetooth peripheral within range
- Advertise AVRCP profile to lure connection
- Victim initiates pairing or media session
- Send crafted media element PDU causing OOB read
- Exfiltrate disclosed memory contents
- Combine with additional vulnerabilities for code execution
How to detect it
Review Bluetooth daemon logs for unexpected AVRCP connections or parse errors; correlate with system logs showing memory access anomalies around media element handling.
What your security team should do
- Immediately update all esp-v2 deployments to the fixed commit
- Restrict Bluetooth discoverability and pairing to trusted devices only
- Monitor for unexpected Bluetooth connections from unknown sources
- Review downstream dependents for inherited exposure
The record
BlueZ Audio Profile AVRCP parse_media_element Out-Of-Bounds Read Information Disclosure Vulnerability. This vulnerability allows network-adjacent attackers to disclose sensitive information via Bluetooth on affected installations of BlueZ. User interaction is required to exploit this vulnerability in that the target must connect to a malicious device. The specific flaw exists within the handling of the AVRCP protocol. The issue results from the lack of proper validation of user-supplied data, which can result in a read past the end of an allocated buffer. An attacker can leverage this in conjunction with other vulnerabilities to execute arbitrary code in the context of root. Was ZDI-CAN-20853.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:8 | bluez-cups | 0 | 5.63-5.el8_10.alma.1 |
| AlmaLinux:8 | bluez-libs-devel | 0 | 5.63-5.el8_10.alma.1 |
| AlmaLinux:9 | bluez | 0 | 5.72-2.el9 |
| AlmaLinux:9 | bluez-cups | 0 | 5.72-2.el9 |
| AlmaLinux:9 | bluez-libs | 0 | 5.72-2.el9 |
| AlmaLinux:9 | bluez-libs-devel | 0 | 5.72-2.el9 |
| AlmaLinux:9 | bluez-obexd | 0 | 5.72-2.el9 |
| Debian:11 | bluez | 0 | No fix |
| Debian:12 | bluez | 0 | No fix |
| Debian:13 | bluez | 0 | No fix |
| Mageia:9 | bluez | 0 | 5.80-1.mga9 |
| Red Hat:enterprise_linux:9::appstream | bluez | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-cups | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-cups-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-debugsource | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-hid2hci-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-libs | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-libs-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-libs-devel | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-libs-devel-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-mesh-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-obexd | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::appstream | bluez-obexd-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-cups | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-cups-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-debugsource | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-hid2hci-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-libs | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-libs-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-libs-devel | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-libs-devel-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-mesh-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-obexd | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::baseos | bluez-obexd-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-cups | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-cups-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-debugsource | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-hid2hci-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-libs | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-libs-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-libs-devel | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-libs-devel-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-mesh-debuginfo | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-obexd | 0 | 0:5.72-2.el9 |
| Red Hat:enterprise_linux:9::crb | bluez-obexd-debuginfo | 0 | 0:5.72-2.el9 |
| Rocky Linux:9 | bluez | 0 | 0:5.72-2.el9 |
| Ubuntu:20.04:LTS | bluez | 0 | No fix |
| Ubuntu:22.04:LTS | bluez | 0 | No fix |
| Ubuntu:24.04:LTS | bluez | 0 | No fix |
| Ubuntu:24.10 | bluez | 0 | No fix |
| Ubuntu:25.04 | bluez | 0 | No fix |
| Ubuntu:25.10 | bluez | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | bluez | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | bluez | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | bluez | 0 | No fix |
Related vulnerabilities
- CVE-2023-27349 BlueZ Audio Profile AVRCP Improper Validation of Array Index Remote Code Execution… Also affects bluez-cups
- CVE-2023-45866 Bluetooth HID Hosts in BlueZ may permit an unauthenticated Peripheral role HID Device to… Also affects bluez-cups
- CVE-2023-51594 BlueZ OBEX Library Out-Of-Bounds Read Information Disclosure Vulnerability. Also affects bluez
- CVE-2023-51596 BlueZ Phone Book Access Profile Heap-based Buffer Overflow Remote Code Execution… Also affects bluez
- CVE-2023-51592 BlueZ Audio Profile AVRCP parse_media_folder Out-Of-Bounds Read Information Disclosure… Also affects bluez
- CVE-2023-51580 BlueZ Audio Profile AVRCP avrcp_parse_attribute_list Out-Of-Bounds Read Information… Also affects bluez
- CVE-2023-44431 BlueZ Audio Profile AVRCP Stack-based Buffer Overflow Remote Code Execution Vulnerability. Also affects bluez
- CVE-2022-39176 BlueZ before 5.59 allows physically proximate attackers to obtain sensitive information… Also affects bluez