Skip to main content

CVE-2024-50145: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2024-50145cvecve-2024-50145
Published: Thu Nov 07 2024 (11/07/2024, 09:31:22 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: octeon_ep: Add SKB allocation failures handling in __octep_oq_process_rx() build_skb() returns NULL in case of a memory allocation failure so handle it inside __octep_oq_process_rx() to avoid NULL pointer dereference. __octep_oq_process_rx() is called during NAPI polling by the driver. If skb allocation fails, keep on pulling packets out of the Rx DMA queue: we shouldn't break the polling immediately and thus falsely indicate to the octep_napi_poll() that the Rx pressure is going down. As there is no associated skb in this case, don't process the packets and don't push them up the network stack - they are skipped. Helper function is implemented to unmmap/flush all the fragment buffers used by the dropped packet. 'alloc_failures' counter is incremented to mark the skb allocation error in driver statistics. Found by Linux Verification Center (linuxtesting.org) with SVACE.

AI-Powered Analysis

AILast updated: 06/28/2025, 17:54:39 UTC

Technical Analysis

CVE-2024-50145 addresses a vulnerability in the Linux kernel's octeon_ep network driver, specifically within the __octep_oq_process_rx() function that handles received packets during NAPI polling. The vulnerability arises from improper handling of SKB (socket buffer) allocation failures. The function build_skb() can return NULL when memory allocation fails, but prior to the fix, this condition was not properly handled. This could lead to a NULL pointer dereference if the driver attempted to process a non-existent SKB, potentially causing kernel crashes or instability. The patch introduces logic to detect when build_skb() returns NULL and, in such cases, skips processing the affected packets rather than pushing them up the network stack. Additionally, a helper function was added to unmap and flush fragment buffers associated with dropped packets to prevent resource leaks. An 'alloc_failures' counter was also implemented to track these allocation errors in driver statistics. The vulnerability was discovered by the Linux Verification Center using static analysis tools (SVACE). The affected code is part of the octeon_ep driver, which is used for networking on Cavium Octeon processors, commonly found in embedded and network infrastructure devices. No known exploits are reported in the wild, and no CVSS score has been assigned yet.

Potential Impact

For European organizations, the impact of this vulnerability depends largely on the deployment of Linux systems running on hardware with Cavium Octeon processors using the octeon_ep driver. Such systems are typically found in specialized network appliances, telecommunications equipment, and embedded devices rather than general-purpose servers or desktops. If exploited, the vulnerability could cause kernel crashes or denial of service due to NULL pointer dereferences during packet processing, potentially disrupting network connectivity or device availability. This could affect critical infrastructure providers, telecom operators, and enterprises relying on embedded Linux devices for network functions. While the vulnerability does not appear to allow privilege escalation or remote code execution directly, the resulting instability could be leveraged in multi-stage attacks or cause operational disruptions. Given the lack of known exploits and the requirement for specific hardware and driver usage, the immediate risk is moderate but should not be underestimated in environments with affected devices.

Mitigation Recommendations

European organizations should first identify whether their infrastructure includes devices running the Linux kernel with the octeon_ep driver, particularly on Cavium Octeon-based hardware. This can be done by auditing network appliances, embedded systems, and telecom equipment inventories. Applying the latest Linux kernel updates that include the patch for CVE-2024-50145 is critical to prevent potential crashes from SKB allocation failures. For devices where kernel updates are not immediately feasible, consider implementing network-level protections to limit exposure to malformed or high-volume traffic that could trigger memory pressure and SKB allocation failures. Monitoring driver statistics for the 'alloc_failures' counter can provide early warning signs of memory allocation issues. Additionally, ensure robust memory management and resource monitoring on affected devices to detect and respond to abnormal conditions promptly. Collaborate with hardware and device vendors to obtain firmware or kernel patches if the devices run customized Linux kernels.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-10-21T19:36:19.956Z
Cisa Enriched
false
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9825c4522896dcbe00bc

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

Last enriched: 6/28/2025, 5:54:39 PM

Last updated: 8/16/2025, 1:26:21 PM

Views: 10

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