CVE-2024-26640: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: tcp: add sanity checks to rx zerocopy TCP rx zerocopy intent is to map pages initially allocated from NIC drivers, not pages owned by a fs. This patch adds to can_map_frag() these additional checks: - Page must not be a compound one. - page->mapping must be NULL. This fixes the panic reported by ZhangPeng. syzbot was able to loopback packets built with sendfile(), mapping pages owned by an ext4 file to TCP rx zerocopy. r3 = socket$inet_tcp(0x2, 0x1, 0x0) mmap(&(0x7f0000ff9000/0x4000)=nil, 0x4000, 0x0, 0x12, r3, 0x0) r4 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r4, &(0x7f0000000000)={0x2, 0x4e24, @multicast1}, 0x10) connect$inet(r4, &(0x7f00000006c0)={0x2, 0x4e24, @empty}, 0x10) r5 = openat$dir(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x181e42, 0x0) fallocate(r5, 0x0, 0x0, 0x85b8) sendfile(r4, r5, 0x0, 0x8ba0) getsockopt$inet_tcp_TCP_ZEROCOPY_RECEIVE(r4, 0x6, 0x23, &(0x7f00000001c0)={&(0x7f0000ffb000/0x3000)=nil, 0x3000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, &(0x7f0000000440)=0x40) r6 = openat$dir(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x181e42, 0x0)
AI Analysis
Technical Summary
CVE-2024-26640 is a vulnerability in the Linux kernel related to the TCP receive (rx) zerocopy mechanism. Zerocopy is a performance optimization technique that allows network drivers to map pages directly to user space without copying data, reducing CPU usage and latency. The vulnerability arises because the TCP rx zerocopy implementation incorrectly allows mapping of pages that are owned by the filesystem (fs), rather than only pages allocated by NIC drivers as intended. Specifically, the kernel lacked sufficient sanity checks to ensure that the pages mapped for zerocopy are not compound pages and that their page->mapping field is NULL, indicating they are not associated with any filesystem. This flaw can lead to a kernel panic, causing a denial of service (DoS) condition. The issue was discovered through fuzzing tools like syzbot, which demonstrated that crafted packets using sendfile() could trigger the panic by mapping ext4 filesystem pages to TCP rx zerocopy. The patch adds additional checks in the can_map_frag() function to prevent mapping of compound pages and pages with non-NULL mapping pointers, thereby preventing the panic. The vulnerability affects Linux kernel versions identified by the commit hash 93ab6cc69162775201587cc9da00d5016dc890e2 and was published on March 18, 2024. No known exploits are currently reported in the wild, and no CVSS score has been assigned yet.
Potential Impact
For European organizations, this vulnerability primarily poses a risk of denial of service through kernel panics on Linux systems that utilize TCP rx zerocopy, especially those handling high-performance networking or using sendfile() system calls in their applications. The impact is significant for servers and network appliances running vulnerable Linux kernels, as an attacker could cause service interruptions by sending specially crafted network packets. While this vulnerability does not appear to allow privilege escalation or remote code execution, the resulting DoS could disrupt critical services, affecting availability. Organizations relying on Linux-based infrastructure for web servers, file servers, or network functions could experience outages or degraded performance. Given the widespread use of Linux in European data centers, cloud providers, and enterprise environments, the potential for operational disruption is notable. However, the lack of known exploits and the requirement for crafted network traffic somewhat limit the immediate risk.
Mitigation Recommendations
European organizations should prioritize updating their Linux kernels to versions that include the patch fixing CVE-2024-26640. Specifically, they should track vendor advisories and apply kernel updates that add the necessary sanity checks to the TCP rx zerocopy code. For environments where immediate patching is not feasible, administrators should consider disabling TCP rx zerocopy if possible, or restrict the use of sendfile() in network-facing applications until patched. Network-level mitigations include monitoring for anomalous TCP traffic patterns that could indicate attempts to exploit this vulnerability. Additionally, organizations should implement robust kernel crash monitoring and automated recovery mechanisms to minimize downtime in case of a triggered panic. Security teams should also engage in vulnerability scanning and inventory management to identify affected Linux kernel versions across their infrastructure.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Italy, Spain, Poland
CVE-2024-26640: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: tcp: add sanity checks to rx zerocopy TCP rx zerocopy intent is to map pages initially allocated from NIC drivers, not pages owned by a fs. This patch adds to can_map_frag() these additional checks: - Page must not be a compound one. - page->mapping must be NULL. This fixes the panic reported by ZhangPeng. syzbot was able to loopback packets built with sendfile(), mapping pages owned by an ext4 file to TCP rx zerocopy. r3 = socket$inet_tcp(0x2, 0x1, 0x0) mmap(&(0x7f0000ff9000/0x4000)=nil, 0x4000, 0x0, 0x12, r3, 0x0) r4 = socket$inet_tcp(0x2, 0x1, 0x0) bind$inet(r4, &(0x7f0000000000)={0x2, 0x4e24, @multicast1}, 0x10) connect$inet(r4, &(0x7f00000006c0)={0x2, 0x4e24, @empty}, 0x10) r5 = openat$dir(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x181e42, 0x0) fallocate(r5, 0x0, 0x0, 0x85b8) sendfile(r4, r5, 0x0, 0x8ba0) getsockopt$inet_tcp_TCP_ZEROCOPY_RECEIVE(r4, 0x6, 0x23, &(0x7f00000001c0)={&(0x7f0000ffb000/0x3000)=nil, 0x3000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, &(0x7f0000000440)=0x40) r6 = openat$dir(0xffffffffffffff9c, &(0x7f00000000c0)='./file0\x00', 0x181e42, 0x0)
AI-Powered Analysis
Technical Analysis
CVE-2024-26640 is a vulnerability in the Linux kernel related to the TCP receive (rx) zerocopy mechanism. Zerocopy is a performance optimization technique that allows network drivers to map pages directly to user space without copying data, reducing CPU usage and latency. The vulnerability arises because the TCP rx zerocopy implementation incorrectly allows mapping of pages that are owned by the filesystem (fs), rather than only pages allocated by NIC drivers as intended. Specifically, the kernel lacked sufficient sanity checks to ensure that the pages mapped for zerocopy are not compound pages and that their page->mapping field is NULL, indicating they are not associated with any filesystem. This flaw can lead to a kernel panic, causing a denial of service (DoS) condition. The issue was discovered through fuzzing tools like syzbot, which demonstrated that crafted packets using sendfile() could trigger the panic by mapping ext4 filesystem pages to TCP rx zerocopy. The patch adds additional checks in the can_map_frag() function to prevent mapping of compound pages and pages with non-NULL mapping pointers, thereby preventing the panic. The vulnerability affects Linux kernel versions identified by the commit hash 93ab6cc69162775201587cc9da00d5016dc890e2 and was published on March 18, 2024. No known exploits are currently reported in the wild, and no CVSS score has been assigned yet.
Potential Impact
For European organizations, this vulnerability primarily poses a risk of denial of service through kernel panics on Linux systems that utilize TCP rx zerocopy, especially those handling high-performance networking or using sendfile() system calls in their applications. The impact is significant for servers and network appliances running vulnerable Linux kernels, as an attacker could cause service interruptions by sending specially crafted network packets. While this vulnerability does not appear to allow privilege escalation or remote code execution, the resulting DoS could disrupt critical services, affecting availability. Organizations relying on Linux-based infrastructure for web servers, file servers, or network functions could experience outages or degraded performance. Given the widespread use of Linux in European data centers, cloud providers, and enterprise environments, the potential for operational disruption is notable. However, the lack of known exploits and the requirement for crafted network traffic somewhat limit the immediate risk.
Mitigation Recommendations
European organizations should prioritize updating their Linux kernels to versions that include the patch fixing CVE-2024-26640. Specifically, they should track vendor advisories and apply kernel updates that add the necessary sanity checks to the TCP rx zerocopy code. For environments where immediate patching is not feasible, administrators should consider disabling TCP rx zerocopy if possible, or restrict the use of sendfile() in network-facing applications until patched. Network-level mitigations include monitoring for anomalous TCP traffic patterns that could indicate attempts to exploit this vulnerability. Additionally, organizations should implement robust kernel crash monitoring and automated recovery mechanisms to minimize downtime in case of a triggered panic. Security teams should also engage in vulnerability scanning and inventory management to identify affected Linux kernel versions across their infrastructure.
Affected Countries
For access to advanced analysis and higher rate limits, contact root@offseq.com
Technical Details
- Data Version
- 5.1
- Assigner Short Name
- Linux
- Date Reserved
- 2024-02-19T14:20:24.137Z
- Cisa Enriched
- true
- Cvss Version
- null
- State
- PUBLISHED
Threat ID: 682d982bc4522896dcbe425c
Added to database: 5/21/2025, 9:08:59 AM
Last enriched: 6/29/2025, 9:27:46 PM
Last updated: 7/31/2025, 12:07:20 PM
Views: 9
Related Threats
Researcher to release exploit for full auth bypass on FortiWeb
HighCVE-2025-9091: Hard-coded Credentials in Tenda AC20
LowCVE-2025-9090: Command Injection in Tenda AC20
MediumCVE-2025-9092: CWE-400 Uncontrolled Resource Consumption in Legion of the Bouncy Castle Inc. Bouncy Castle for Java - BC-FJA 2.1.0
LowCVE-2025-9089: Stack-based Buffer Overflow in Tenda AC20
HighActions
Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.
External Links
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.