CVE-2024-57934: fgraph: Add READ_ONCE() when accessing fgraph_array[]
In the Linux kernel, the following vulnerability has been resolved:
fgraph: Add READ_ONCE() when accessing fgraph_array[]
In __ftrace_return_to_handler(), a loop iterates over the fgraph_array[]
elements, which are fgraph_ops. The loop checks if an element is a
fgraph_stub to prevent using a fgraph_stub afterward.
However, if the compiler reloads fgraph_array[] after this check, it might
race with an update to fgraph_array[] that introduces a fgraph_stub. This
could result in the stub being processed, but the stub contains a null
"func_hash" field, leading to a NULL pointer dereference.
To ensure that the gops compared against the fgraph_stub matches the gops
processed later, add a READ_ONCE(). A similar patch appears in commit
63a8dfb ("function_graph: Add READ_ONCE() when accessing fgraph_array[]").
Security readout for executives and security teams
Plain-English summary
This Linux kernel issue can crash affected systems through a null pointer dereference in function graph tracing code. The business impact is availability, not data theft. Exploitation requires local low-privileged access and difficult race conditions, so urgency is controlled but real for shared or multi-user Linux environments.
Executive priority
Treat as a scheduled kernel maintenance item, accelerated for shared Linux infrastructure. It is not currently evidenced as remotely exploitable or actively exploited, but unpatched systems may be vulnerable to local denial of service.
Technical view
__ftrace_return_to_handler() checks fgraph_array[] for fgraph_stub, but compiler reloads could race with updates and process a stub whose func_hash is null. The fix uses READ_ONCE() so the checked fgraph_ops entry is the same one later processed. CVSS is 4.7: local, high complexity, low privileges, high availability impact.
Likely exposure
Exposure is limited to Linux systems running affected kernel builds identified in the CVE data, including 6.11, 6.12.9, and 6.13 entries. Internet-facing services are not directly exposed unless an attacker already has local code execution or user access on the host.
Exploitation context
The source bundle does not show CISA KEV listing or active exploitation. The CVSS vector indicates local access, high attack complexity, and low privileges. Practical concern is local denial of service on systems where affected tracing paths can be reached.
Researcher notes
Key uncertainty is affected-version mapping and distribution backports. Validate against vendor kernels, not upstream version strings alone. The issue is a race/consistency bug in fgraph_array[] access and the remedy is the READ_ONCE() stabilization shown in kernel stable references.
Mitigation direction
Update to kernel or distribution packages containing the referenced stable fixes.
Prioritize multi-user, shared compute, and container-host environments first.
Check vendor advisories for backported fixes before judging by version alone.
Restrict unnecessary local user access on sensitive Linux hosts.
Monitor for kernel crash patterns involving ftrace or function graph tracing.
Validation and detection
Inventory Linux kernel versions across servers, desktops, and appliances.
Confirm whether vendor packages include commits b68b2a3f or d6547403.
Review distro security trackers for affected and fixed package status.
Check crash logs for NULL dereferences in ftrace return handling.
Document exceptions where vendor guidance is unavailable or pending.
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.
cwe · low confidence lookup
CWE-476: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
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.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-476 · source CWE mapping
NULL Pointer Dereference
NULL Pointer Dereference represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.