CVE-2024-56654: Bluetooth: hci_event: Fix using rcu_read_(un)lock while iterating
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: hci_event: Fix using rcu_read_(un)lock while iterating
The usage of rcu_read_(un)lock while inside list_for_each_entry_rcu is
not safe since for the most part entries fetched this way shall be
treated as rcu_dereference:
Note that the value returned by rcu_dereference() is valid
only within the enclosing RCU read-side critical section [1]_.
For example, the following is **not** legal::
rcu_read_lock();
p = rcu_dereference(head.next);
rcu_read_unlock();
x = p->address; /* BUG!!! */
rcu_read_lock();
y = p->data; /* BUG!!! */
rcu_read_unlock();
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel Bluetooth flaw that can let a local, low-privileged user crash the system. It is not described as remote code execution or data theft. The business impact is mainly availability: affected hosts may be vulnerable to denial of service if they run impacted kernels and expose the Bluetooth stack.
Executive priority
Treat as a routine but real availability risk. Patch through normal kernel maintenance, prioritizing shared Linux systems, endpoints, and any environment where untrusted local users can run code.
Technical view
The issue is in Linux Bluetooth hci_event handling. The CVE describes unsafe RCU read-side locking while iterating with list_for_each_entry_rcu, where entries must remain inside the enclosing critical section. The CVSS vector is local, low complexity, low privileges, no user interaction, and high availability impact.
Likely exposure
Exposure is most likely on Linux systems running affected kernel versions or downstream backports without the referenced stable fixes, especially where Bluetooth support is enabled and local users can execute code.
Exploitation context
The source bundle does not show CISA KEV listing or cited active exploitation. CVSS indicates local exploitation with low privileges and no user interaction. Available evidence supports denial of service impact, not confidentiality or integrity loss.
Researcher notes
The affected-version data is kernel-centric and commit-oriented, not distribution-package-specific. Analysis should focus on Bluetooth hci_event RCU lifetime handling and whether downstream kernels have backported the stable fixes. No exploit details are provided in the source bundle.
Mitigation direction
Apply Linux kernel updates that include the referenced stable fixes.
Use distribution vendor advisories to identify fixed backported kernel packages.
Prioritize systems with Bluetooth enabled and local multi-user access.
Reboot into the updated kernel after patch installation.
If Bluetooth is unnecessary, evaluate disabling it through approved platform controls.
Validation and detection
Inventory Linux kernel versions across servers, endpoints, and appliances.
Confirm whether installed vendor kernels include the referenced stable commits or backports.
Identify systems with Bluetooth hardware, modules, or services enabled.
Verify patched systems are actually running the updated kernel after reboot.
Track vendor advisories because package-level fixed versions are not provided here.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-56654 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.