CVE-2024-26924

Published Apr 25, 2024

Last updated 9 months ago

Overview

Description
In the Linux kernel, the following vulnerability has been resolved: netfilter: nft_set_pipapo: do not free live element Pablo reports a crash with large batches of elements with a back-to-back add/remove pattern. Quoting Pablo: add_elem("00000000") timeout 100 ms ... add_elem("0000000X") timeout 100 ms del_elem("0000000X") <---------------- delete one that was just added ... add_elem("00005000") timeout 100 ms 1) nft_pipapo_remove() removes element 0000000X Then, KASAN shows a splat. Looking at the remove function there is a chance that we will drop a rule that maps to a non-deactivated element. Removal happens in two steps, first we do a lookup for key k and return the to-be-removed element and mark it as inactive in the next generation. Then, in a second step, the element gets removed from the set/map. The _remove function does not work correctly if we have more than one element that share the same key. This can happen if we insert an element into a set when the set already holds an element with same key, but the element mapping to the existing key has timed out or is not active in the next generation. In such case its possible that removal will unmap the wrong element. If this happens, we will leak the non-deactivated element, it becomes unreachable. The element that got deactivated (and will be freed later) will remain reachable in the set data structure, this can result in a crash when such an element is retrieved during lookup (stale pointer). Add a check that the fully matching key does in fact map to the element that we have marked as inactive in the deactivation step. If not, we need to continue searching. Add a bug/warn trap at the end of the function as well, the remove function must not ever be called with an invisible/unreachable/non-existent element. v2: avoid uneeded temporary variable (Stefano)
Source
416baaa9-dc9f-4396-8d5f-8c081fb06d67
NVD status
Modified
Products
linux_kernel, debian_linux

Risk scores

CVSS 3.1

Type
Secondary
Base score
5.9
Impact score
3.6
Exploitability score
2.2
Vector string
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Severity
MEDIUM

Weaknesses

134c704f-9b21-4f2e-91b3-4a467353bcc0
CWE-476

Social media

Hype score
Not currently trending
  1. Critical #Ubuntu Kernel FIPS Vuln: CVE-2024-26924. Local Privilege Escalation via race condition in crypto module. Impacts FIPS-validated systems in gov/finance/healthcare. Read more: ๐Ÿ‘‰ https://t.co/G3GgJ88hY6 #Security https://t.co/DkUSPp4JhB

    @Cezar_H_Linux

    4 Dec 2025

    7 Impressions

    0 Retweets

    0 Likes

    0 Bookmarks

    0 Replies

    0 Quotes

  2. ๐Ÿšจ USN-7907-2 Alert: Critical vuln (CVE-2024-26924) patched in #Ubuntu FIPS kernel. Impacts cryptographic integrity for regulated enterprises. Local exploit -&gt; potential compliance breach. Read more: ๐Ÿ‘‰ https://t.co/m80aQUNejQ #Security https://t.co/D5z5Qz1oOw

    @Cezar_H_Linux

    3 Dec 2025

    14 Impressions

    0 Retweets

    0 Likes

    0 Bookmarks

    0 Replies

    0 Quotes

  3. Critical Linux kernel vuln CVE-2024-26924 patched in #SUSE update 2025-3970-1. โš ๏ธ Read more: ๐Ÿ‘‰ https://t.co/oHmKpQH6kZ #Security https://t.co/WsUz9yeT0w

    @Cezar_H_Linux

    6 Nov 2025

    40 Impressions

    0 Retweets

    0 Likes

    0 Bookmarks

    0 Replies

    0 Quotes

  4. ๐Ÿšจ URGENT: Critical Linux kernel vulnerability CVE-2024-26924 affects #Ubuntu 22.04/23.10. Local privilege escalation via nf_tables flaw. Patch NOW! Read more: ๐Ÿ‘‰ https://t.co/PY0kBaPozc #Security https://t.co/JC9qclw3xI

    @Cezar_H_Linux

    28 Sept 2025

    80 Impressions

    0 Retweets

    0 Likes

    0 Bookmarks

    0 Replies

    0 Quotes

  5. ๐Ÿšจ Critical #Ubuntu Security Alert! ๐Ÿšจ CVE-2024-26924: A high-severity Linux kernel flaw allows local privilege escalation to root. Affects: Ubuntu 20.04 LTS, 22.04 LTS, 23.10 Read more:๐Ÿ‘‰ https://t.co/qmvjYpmxcp #Security https://t.co/SylX2F2IsR

    @Cezar_H_Linux

    20 Sept 2025

    94 Impressions

    0 Retweets

    0 Likes

    0 Bookmarks

    0 Replies

    0 Quotes

  6. ๐Ÿšจ Urgent Update for SysAdmins &amp; DevOps! ๐Ÿšจ A critical vulnerability (CVE-2024-26924) has been found in the Linux kernel, affecting multiple #Ubuntu LTS versions. Read more:๐Ÿ‘‰ https://t.co/yS9PzH2B41 #Security https://t.co/bz9QZKSTX7

    @Cezar_H_Linux

    19 Aug 2025

    8 Impressions

    0 Retweets

    0 Likes

    0 Bookmarks

    0 Replies

    0 Quotes

Configurations

  1. In the Linux kernel, the following vulnerability has been resolved: ipv6: account for fraggap on the paged allocation path In __ip6_append_data(), when the paged-allocation branch is taken (MSG_MORE / NETIF_F_SG / large fraglen), alloclen and pagedlen are computed as alloclen = fragheaderlen + transhdrlen; pagedlen = datalen - transhdrlen; datalen already includes fraggap (datalen = length + fraggap). When fraggap is non-zero, this is not the first skb and transhdrlen is zero. The fraggap bytes carried over from the previous skb are copied just past the fragment headers in the new skb's linear area. The linear area is therefore undersized by fraggap bytes while pagedlen is overstated by the same amount, and the copy writes past skb->end into the trailing skb_shared_info. An unprivileged user can trigger this via a UDPv6 socket using MSG_MORE together with MSG_SPLICE_PAGES. The bad accounting was introduced by commit 773ba4fe9104 ("ipv6: avoid partial copy for zc"). Before commit ce650a166335 ("udp6: Fix __ip6_append_data()'s handling of MSG_SPLICE_PAGES"), the negative copy value caused -EINVAL to be returned. That later commit allowed MSG_SPLICE_PAGES to proceed in this case, making the corruption triggerable. The non-paged branch sets alloclen to fraglen, which already accounts for fraggap because datalen does. Bring the paged branch in line by adding fraggap to alloclen and subtracting it from pagedlen. After this adjustment, copy no longer collapses to -fraggap on the paged path, so remove the stale comment describing that old arithmetic. Since a negative copy is no longer expected for a valid MSG_SPLICE_PAGES case, remove the MSG_SPLICE_PAGES exception from the negative copy check.โ€ขCVE-2026-53362