Skip to main content

CVE-2024-26675: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2024-26675cvecve-2024-26675
Published: Tue Apr 02 2024 (04/02/2024, 07:01:40 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: ppp_async: limit MRU to 64K syzbot triggered a warning [1] in __alloc_pages(): WARN_ON_ONCE_GFP(order > MAX_PAGE_ORDER, gfp) Willem fixed a similar issue in commit c0a2a1b0d631 ("ppp: limit MRU to 64K") Adopt the same sanity check for ppp_async_ioctl(PPPIOCSMRU) [1]: WARNING: CPU: 1 PID: 11 at mm/page_alloc.c:4543 __alloc_pages+0x308/0x698 mm/page_alloc.c:4543 Modules linked in: CPU: 1 PID: 11 Comm: kworker/u4:0 Not tainted 6.8.0-rc2-syzkaller-g41bccc98fb79 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023 Workqueue: events_unbound flush_to_ldisc pstate: 204000c5 (nzCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __alloc_pages+0x308/0x698 mm/page_alloc.c:4543 lr : __alloc_pages+0xc8/0x698 mm/page_alloc.c:4537 sp : ffff800093967580 x29: ffff800093967660 x28: ffff8000939675a0 x27: dfff800000000000 x26: ffff70001272ceb4 x25: 0000000000000000 x24: ffff8000939675c0 x23: 0000000000000000 x22: 0000000000060820 x21: 1ffff0001272ceb8 x20: ffff8000939675e0 x19: 0000000000000010 x18: ffff800093967120 x17: ffff800083bded5c x16: ffff80008ac97500 x15: 0000000000000005 x14: 1ffff0001272cebc x13: 0000000000000000 x12: 0000000000000000 x11: ffff70001272cec1 x10: 1ffff0001272cec0 x9 : 0000000000000001 x8 : ffff800091c91000 x7 : 0000000000000000 x6 : 000000000000003f x5 : 00000000ffffffff x4 : 0000000000000000 x3 : 0000000000000020 x2 : 0000000000000008 x1 : 0000000000000000 x0 : ffff8000939675e0 Call trace: __alloc_pages+0x308/0x698 mm/page_alloc.c:4543 __alloc_pages_node include/linux/gfp.h:238 [inline] alloc_pages_node include/linux/gfp.h:261 [inline] __kmalloc_large_node+0xbc/0x1fc mm/slub.c:3926 __do_kmalloc_node mm/slub.c:3969 [inline] __kmalloc_node_track_caller+0x418/0x620 mm/slub.c:4001 kmalloc_reserve+0x17c/0x23c net/core/skbuff.c:590 __alloc_skb+0x1c8/0x3d8 net/core/skbuff.c:651 __netdev_alloc_skb+0xb8/0x3e8 net/core/skbuff.c:715 netdev_alloc_skb include/linux/skbuff.h:3235 [inline] dev_alloc_skb include/linux/skbuff.h:3248 [inline] ppp_async_input drivers/net/ppp/ppp_async.c:863 [inline] ppp_asynctty_receive+0x588/0x186c drivers/net/ppp/ppp_async.c:341 tty_ldisc_receive_buf+0x12c/0x15c drivers/tty/tty_buffer.c:390 tty_port_default_receive_buf+0x74/0xac drivers/tty/tty_port.c:37 receive_buf drivers/tty/tty_buffer.c:444 [inline] flush_to_ldisc+0x284/0x6e4 drivers/tty/tty_buffer.c:494 process_one_work+0x694/0x1204 kernel/workqueue.c:2633 process_scheduled_works kernel/workqueue.c:2706 [inline] worker_thread+0x938/0xef4 kernel/workqueue.c:2787 kthread+0x288/0x310 kernel/kthread.c:388 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:860

AI-Powered Analysis

AILast updated: 06/29/2025, 17:11:29 UTC

Technical Analysis

CVE-2024-26675 is a vulnerability identified in the Linux kernel, specifically related to the Point-to-Point Protocol (PPP) asynchronous driver component (ppp_async). The issue revolves around the Maximum Receive Unit (MRU) size parameter, which was not properly limited, potentially allowing an attacker to specify an excessively large MRU value. This improper limitation could lead to a warning or error in the kernel memory allocation function __alloc_pages(), as indicated by the WARN_ON_ONCE_GFP(order > MAX_PAGE_ORDER, gfp) warning triggered by syzbot, a kernel fuzzing tool. The root cause is that the MRU value was not capped at 64K, which is the maximum safe size for this parameter. The vulnerability was addressed by applying a sanity check in the ppp_async_ioctl function, specifically for the PPPIOCSMRU ioctl command, to limit the MRU to 64K, consistent with a prior fix in the ppp driver. The technical details show that the flaw could cause abnormal behavior in kernel memory allocation routines, potentially leading to kernel warnings or faults during packet buffer allocation (skbuff). The vulnerability affects Linux kernel versions around 6.8.0-rc2 and likely other versions using the affected ppp_async driver code. There is no evidence of known exploits in the wild at this time, and no CVSS score has been assigned yet. The vulnerability is primarily a denial-of-service or stability issue caused by improper input validation in kernel space, which could be triggered by a local or remote attacker capable of sending crafted PPP packets or ioctl commands to the ppp_async driver interface.

Potential Impact

For European organizations, the impact of CVE-2024-26675 depends on the deployment of Linux systems using PPP asynchronous drivers, which are typically found in embedded devices, legacy network equipment, or specialized communication systems that rely on PPP links. If exploited, this vulnerability could cause kernel warnings or crashes, leading to denial of service (DoS) conditions on affected systems. This could disrupt network connectivity or critical services relying on PPP links, impacting operational continuity. While the vulnerability does not appear to allow privilege escalation or remote code execution, the resulting instability could be leveraged in targeted attacks against network infrastructure or embedded devices in sectors such as telecommunications, industrial control systems, or IoT deployments common in European industries. The lack of known exploits reduces immediate risk, but the potential for DoS and system instability means organizations should prioritize patching, especially those with legacy or specialized Linux-based network equipment. Additionally, the vulnerability could complicate incident response and system reliability in critical environments.

Mitigation Recommendations

European organizations should implement the following specific mitigation measures: 1) Identify and inventory all Linux systems running kernel versions affected by this vulnerability, focusing on those utilizing PPP asynchronous drivers. 2) Apply the official Linux kernel patches that introduce the MRU size limitation to 64K in the ppp_async_ioctl handler as soon as they become available, or upgrade to a kernel version that includes this fix. 3) For embedded or legacy devices where kernel upgrades are not feasible, consider disabling PPP asynchronous support if not required, or restrict access to the PPP interfaces to trusted users and systems only. 4) Monitor kernel logs and system alerts for WARN_ON_ONCE_GFP or related memory allocation warnings that could indicate attempted exploitation or instability. 5) Implement network-level controls to limit or filter PPP traffic from untrusted sources to reduce exposure. 6) Engage with device vendors and maintainers to ensure timely updates and support for affected hardware running Linux kernels with this vulnerability. 7) Incorporate this vulnerability into vulnerability management and patching cycles, prioritizing systems critical to network operations and industrial processes.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-02-19T14:20:24.151Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d982ac4522896dcbe37c2

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

Last enriched: 6/29/2025, 5:11:29 PM

Last updated: 7/31/2025, 6:48:58 AM

Views: 13

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