Skip to main content

CVE-2024-35890: Vulnerability in Linux Linux

High
VulnerabilityCVE-2024-35890cvecve-2024-35890
Published: Sun May 19 2024 (05/19/2024, 08:34:46 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: gro: fix ownership transfer If packets are GROed with fraglist they might be segmented later on and continue their journey in the stack. In skb_segment_list those skbs can be reused as-is. This is an issue as their destructor was removed in skb_gro_receive_list but not the reference to their socket, and then they can't be orphaned. Fix this by also removing the reference to the socket. For example this could be observed, kernel BUG at include/linux/skbuff.h:3131! (skb_orphan) RIP: 0010:ip6_rcv_core+0x11bc/0x19a0 Call Trace: ipv6_list_rcv+0x250/0x3f0 __netif_receive_skb_list_core+0x49d/0x8f0 netif_receive_skb_list_internal+0x634/0xd40 napi_complete_done+0x1d2/0x7d0 gro_cell_poll+0x118/0x1f0 A similar construction is found in skb_gro_receive, apply the same change there.

AI-Powered Analysis

AILast updated: 07/04/2025, 23:43:23 UTC

Technical Analysis

CVE-2024-35890 is a vulnerability identified in the Linux kernel's Generic Receive Offload (GRO) implementation, specifically related to the handling of socket buffer (skb) ownership and reference counting during packet segmentation and processing. GRO is a performance optimization technique that aggregates multiple incoming packets into a larger buffer to reduce CPU overhead. The vulnerability arises when packets that have been GROed with a fraglist are later segmented and continue through the network stack. In the function skb_segment_list, these segmented skbs can be reused without proper cleanup. The issue is that while the destructor was removed in skb_gro_receive_list, the reference to the associated socket was not removed, preventing the skb from being orphaned correctly. This improper reference management can lead to a kernel BUG triggered at skb_orphan, causing a kernel panic or crash. The problem is also present in skb_gro_receive, and the fix involves removing the socket reference in these cases to ensure proper skb lifecycle management. This vulnerability affects Linux kernel versions identified by the commit hash 5e10da5385d20c4bae587bc2921e5fdd9655d5fc and likely other versions containing the same code pattern. No known exploits are currently reported in the wild. The vulnerability is a memory management flaw in the network stack, which can lead to denial of service (DoS) conditions due to kernel crashes. It does not appear to allow privilege escalation or remote code execution directly but can disrupt network services and system stability.

Potential Impact

For European organizations, this vulnerability poses a risk primarily to the availability and stability of Linux-based systems, which are widely used in servers, network infrastructure, and cloud environments across Europe. A kernel panic caused by this flaw can result in unexpected system reboots or service interruptions, impacting critical services such as web hosting, telecommunications, financial systems, and industrial control systems. Organizations relying on Linux for network-intensive applications or running custom network stacks are particularly vulnerable. Disruptions could lead to operational downtime, loss of productivity, and potential financial losses. While the vulnerability does not directly compromise confidentiality or integrity, the resulting denial of service could be exploited as part of a broader attack strategy to degrade service availability. Given the extensive use of Linux in European data centers and enterprises, the impact could be significant if exploited at scale or combined with other vulnerabilities.

Mitigation Recommendations

To mitigate this vulnerability, European organizations should promptly apply the official Linux kernel patches that address the skb ownership and reference counting issues in the GRO code paths. Kernel upgrades should be prioritized for all affected systems, especially those handling high network traffic or critical workloads. Network administrators should monitor kernel logs for signs of skb_orphan related BUGs or crashes that might indicate attempts to trigger this flaw. Implementing robust system monitoring and automated reboot mechanisms can reduce downtime impact. Additionally, organizations should review their network traffic patterns and consider isolating or rate-limiting suspicious traffic that could trigger segmentation of GRO packets. For environments where immediate patching is not feasible, temporarily disabling GRO or related offload features at the network interface level may reduce exposure, though this may impact performance. Finally, maintaining up-to-date backups and recovery plans will help mitigate operational risks from potential service disruptions.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-05-17T13:50:33.113Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9817c4522896dcbd738a

Added to database: 5/21/2025, 9:08:39 AM

Last enriched: 7/4/2025, 11:43:23 PM

Last updated: 8/11/2025, 7:59:46 PM

Views: 11

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats