Linux Kernel
CVE-2024-35835
HIGH
Severity by source
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Requires both mlx5 NIC hardware presence and engineering a specific kvzalloc failure path, justifying AC:H over NVD's AC:L; all other metrics align with the NVD assessment.
Primary rating from Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67).
CVSS VectorVendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Lifecycle Timeline
7DescriptionCVE.org
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.
AnalysisAI
Double-free memory corruption in the Linux kernel's mlx5e Ethernet driver exposes systems running Mellanox/NVIDIA MLX5-family NICs to local privilege escalation. The flaw resides in the ARFS (Accelerated Receive Flow Steering) subsystem: when kvzalloc fails inside arfs_create_groups, that function frees ft->g as part of its own cleanup, but its sole caller arfs_create_table subsequently invokes mlx5e_destroy_flow_table on the same error return, freeing ft->g a second time and corrupting the kernel heap. Eight upstream patch commits across multiple stable kernel branches confirm vendor acknowledgment; no public exploit code and no CISA KEV listing have been identified at time of analysis.
Technical ContextAI
The vulnerable code resides in the net/mlx5e driver, which implements support for NVIDIA/Mellanox ConnectX-series network interface cards. ARFS (Accelerated Receive Flow Steering) is a Linux kernel feature that offloads packet-to-CPU-queue steering decisions to NIC hardware via flow tables; arfs_create_table and arfs_create_groups build those flow table group descriptors at initialization time. CWE-415 (Double Free) arises from an error-path ownership assumption mismatch: arfs_create_groups frees ft->g upon kvzalloc failure before returning an error code, but arfs_create_table - the only caller - unconditionally calls mlx5e_destroy_flow_table on any error return, which also frees ft->g. In the kernel allocator, double-freeing a slab object corrupts the allocator's free-list metadata, a primitive that kernel exploit techniques such as heap spraying can leverage to achieve arbitrary write access and privilege escalation. The CPE data confirms affected targets are cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* across multiple version ranges, including the 6.8-rc1 development cycle, plus cpe:2.3:o:debian:debian_linux:10.0.
RemediationAI
Apply the upstream kernel patches confirmed via eight stable-branch commits on git.kernel.org: 2501afe6c4c9, 3c6d5189246f, 42876db001bb, 66cc521a739c, b21db3f1ab79, c57ca114eb00, cf116d9c3c2a, and e3d3ed8c1529 (full URLs in references). Distribution maintainers should be tracked for backported packages - Debian users should apply updates via the standard linux security update channel. Exact fixed kernel version numbers per stable series are not independently confirmed in available data and should be verified against the respective stable branch changelogs at git.kernel.org/stable. As an immediate compensating control for environments that do not require hardware-offloaded flow steering, disable ARFS on the affected interface with ethtool -K <interface> ntuple off; this prevents the vulnerable arfs_create_table code path from being invoked without affecting basic connectivity, but eliminates NIC-level receive-side packet distribution and may increase CPU load for high-throughput workloads.
More in Debian Linux
View allApache Log4j2 contains a critical JNDI injection vulnerability known as 'Log4Shell' that allows unauthenticated remote c
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
GNU Bash through 4.3 processes trailing strings after function definitions in the values of environment variables, which
Samba since version 3.5.0 and before 4.6.4, 4.5.10 and 4.4.14 is vulnerable to remote code execution vulnerability, allo
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
RARLAB UnRAR before 6.12 on Linux and UNIX allows directory traversal to write to files during an extract (aka unpack) o
The (1) EPHEMERAL, (2) HTTPS, (3) MVG, (4) MSL, (5) TEXT, (6) SHOW, (7) WIN, and (8) PLT coders in ImageMagick before 6.
When running Apache Tomcat versions 9.0.0.M1 to 9.0.0, 8.5.0 to 8.5.22, 8.0.0.RC1 to 8.0.46 and 7.0.0 to 7.0.81 with HTT
When using the Apache JServ Protocol (AJP), care must be taken when trusting incoming connections to Apache Tomcat. Rate
A remote code execution vulnerability exists within multiple subsystems of Drupal 7.x and 8.x. Rated critical severity (
Same weakness CWE-415 – Double Free
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today