CVE-2024-26809利用nftables双重释放漏洞获取Root权限

CVE-2024-26581 PoC利用nftables漏洞示意图

漏洞概述

Linux内核的nftables子系统(特别是net/netfilter模块)中发现一个高危漏洞,攻击者可利用nft_pipapo_destroy()函数中的双重释放(double-free)漏洞实现本地提权。该漏洞编号为CVE-2024-26809,影响内核版本6.1-rc1及以上以及5.15.54及以上的系统。

技术原理

该漏洞源于nftables数据包过滤功能中pipapo集合销毁过程的逻辑缺陷。在特定条件下,某个元素可能同时存在于match和clone中,导致函数尝试对同一内存区域执行两次释放操作,从而引发内存损坏。

问题函数关键片段:

static void nft_pipapo_destroy(const struct nft_ctx *ctx, const struct nft_set *set) {
    struct nft_pipapo *priv = nft_set_priv(set);
    struct nft_pipapo_match *m;
    int cpu;
    m = rcu_dereference_protected(priv->match, true);
    if (m) {
        ...
        nft_set_pipapo_match_destroy(ctx, set, m);
        ...
    }
    if (priv->clone) {
        m = priv->clone;
        if (priv->dirty)
            nft_set_pipapo_match_destroy(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值