CVE-2024-27005: interconnect: Don't access req_list while it's being manipulated
In the Linux kernel, the following vulnerability has been resolved:
interconnect: Don't access req_list while it's being manipulated
The icc_lock mutex was split into separate icc_lock and icc_bw_lock
mutexes in [1] to avoid lockdep splats. However, this didn't adequately
protect access to icc_node::req_list.
The icc_set_bw() function will eventually iterate over req_list while
only holding icc_bw_lock, but req_list can be modified while only
holding icc_lock. This causes races between icc_set_bw(), of_icc_get(),
and icc_put().
Example A:
CPU0 CPU1
---- ----
icc_set_bw(path_a)
mutex_lock(&icc_bw_lock);
icc_put(path_b)
mutex_lock(&icc_lock);
aggregate_requests()
hlist_for_each_entry(r, ...
hlist_del(...
<r = invalid pointer>
Example B:
CPU0 CPU1
---- ----
icc_set_bw(path_a)
mutex_lock(&icc_bw_lock);
path_b = of_icc_get()
of_icc_get_by_index()
mutex_lock(&icc_lock);
path_find()
path_init()
aggregate_requests()
hlist_for_each_entry(r, ...
hlist_add_head(...
<r = invalid pointer>
Fix this by ensuring icc_bw_lock is always held before manipulating
icc_node::req_list. The additional places icc_bw_lock is held don't
perform any memory allocations, so we should still be safe from the
original lockdep splats that motivated the separate locks.
[1] commit af42269c3523 ("interconnect: Fix locking for runpm vs reclaim")
Security readout for executives and security teams
Plain-English summary
CVE-2024-27005 is a Linux kernel race condition in the interconnect subsystem. A local low-privileged user may be able to trigger unsafe list access, potentially causing data exposure or system disruption. It is not listed as KEV, and the provided sources do not show active exploitation.
Executive priority
Treat as a routine but necessary kernel update. Prioritize shared Linux hosts, multi-user systems, and environments where local users or workloads are less trusted.
Technical view
The issue occurs when icc_set_bw() iterates icc_node::req_list under icc_bw_lock while of_icc_get() or icc_put() can modify that list under icc_lock. The fix requires holding icc_bw_lock before manipulating req_list.
Likely exposure
Exposure is limited to Linux systems running affected kernel versions or downstream kernels derived from them. The CVSS vector requires local access, low privileges, no user interaction, and high attack complexity.
Exploitation context
The source bundle marks KEV as false and provides no evidence of active exploitation. The CVSS vector indicates local attack only, high complexity, high confidentiality impact, high availability impact, and no integrity impact.
Researcher notes
Evidence supports a locking race in the Linux interconnect framework with potential invalid pointer access. The bundle includes fix commits and Fedora advisories, but no exploit reports or product-specific exposure beyond Linux kernels.
Mitigation direction
Inventory Linux kernel versions against the affected and fixed versions in the CVE record.
Apply kernel stable updates containing the referenced fixes or vendor distribution updates.
For Fedora systems, review the listed Fedora package announcements and update affected kernels.
If patch timing is uncertain, follow vendor guidance and reduce unnecessary local account access.
Validation and detection
Confirm deployed kernels are not in affected versions listed in the CVE record.
Verify the referenced stable kernel fix is present in source, package metadata, or changelog.
Check distribution advisories for the CVE and fixed package versions.
Confirm vulnerability scanner results map to the actual running kernel package.
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-27005 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.