CVE-2024-35835: net/mlx5e: fix a double-free in arfs_create_groups
In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: fix a double-free in arfs_create_groups
When `in` allocated by kvzalloc fails, arfs_create_groups will free
ft->g and return an error. However, arfs_create_table, the only caller of
arfs_create_groups, will hold this error and call to
mlx5e_destroy_flow_table, in which the ft->g will be freed again.
Security readout for executives and security teams
Plain-English summary
A Linux networking error can free the same kernel memory twice when an allocation fails. This may crash a system or corrupt privileged kernel memory. The supplied CVSS 3.1 assessment is 7.8 High and indicates that a low-privileged local attacker may be able to affect confidentiality, integrity, and availability.
Executive priority
Treat this as a high-priority kernel maintenance issue, especially on multi-user or high-value systems using mlx5e. Apply supported vendor updates promptly, but the supplied evidence does not justify declaring an exploitation emergency. Validate vendor backports because upstream version numbers alone may misclassify distribution kernels.
Technical view
In mlx5e adaptive receive flow steering, arfs_create_groups frees ft->g after kvzalloc fails. Its sole caller then passes the error to mlx5e_destroy_flow_table, which frees ft->g again. The referenced Linux stable commits correct this double-free error path.
Likely exposure
Exposure is most relevant to Linux hosts running affected kernel builds where the mlx5e networking path is present. The bundle lists affected releases from 4.7 through several stable branches and 6.8, but does not clearly express every branch boundary. Confirm exposure against the running distribution kernel and its vendor backport history.
Exploitation context
The CVSS vector describes local, low-complexity exploitation requiring low privileges and no user interaction. CISA KEV status is false, and no supplied source reports active exploitation or a public exploit. The allocation-failure condition may constrain practical triggering; the sources do not establish exploit reliability.
Researcher notes
The defect is an error-path ownership failure: arfs_create_groups releases ft->g, while caller cleanup assumes ownership remains and releases it again. Analysis should focus on branch-specific fix inclusion and reachability of the allocation-failure path. The bundle provides no CWE, exploit telemetry, proof of code execution, or complete normalized affected-version ranges.
Mitigation direction
Install a supported vendor kernel containing the applicable referenced Linux stable fix.
Reboot affected hosts into the updated kernel after following vendor guidance.
Until updated, restrict untrusted local access on systems using mlx5e networking.
Prioritize internet-facing, multi-user, and high-value hosts where local footholds have greater consequences.
Validation and detection
Inventory running kernel versions and distribution package revisions across Linux hosts.
Identify systems loading mlx5e and using the affected networking functionality.
Verify vendor changelogs or source history include the applicable referenced stable commit.
After remediation, confirm each host booted the updated kernel and retired vulnerable builds.
Review kernel logs for unexplained memory corruption, crashes, or mlx5e-related faults.
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-35835 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.