【利用已复现】一个“!”引发的“血案”(LinuxKernelNF_TABLES模块提权漏洞)

admin 2026-04-23 05:37:14 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文分析了LinuxKernelNF_TABLES模块中的Use-After-Free提权漏洞CVE-2026-23111,该漏洞由事务回滚机制中的逻辑取反错误导致,攻击者可通过反复触发abort路径实现本地权限提升。影响范围涵盖Linux内核6.4及之后多个LTS版本,修复方案为删除代码中的一个多余感叹号。建议用户立即升级至已修复版本,并参考官方补丁进行防护。 综合评分: 85 文章分类: 漏洞分析,漏洞预警,应急响应,红队,解决方案


cover_image

【利用已复现】一个“!”引发的“血案”(Linux Kernel NF_TABLES模块提权漏洞)

原创

360漏洞研究院 360漏洞研究院

360漏洞研究院

2026年4月22日 12:04 四川

在小说阅读器读本章

去阅读

“扫描下方二维码,进入公众号粉丝交流群。更多一手网安资讯、漏洞预警、技术干货和技术交流等您参与!”

Linux Kernel NF_TABLES 模块曝出 Use-After-Free 提权漏洞(CVE-2026-23111,CVSS 7.8),攻击者通过利用事务回滚机制中的逻辑缺陷,可实现非特权用户提权,获取系统最高权限。

目前 360漏洞挖掘智能体已成功复现该漏洞。本文包含完整影响范围、修复方案、技术原理与复现细节,建议用户立即升级。

| | | | | | — | — | — | — | | 漏洞概述 | | | | | 漏洞名称 | Linux Kernel NF_TABLES模块Use-After-Free提权漏洞 | | | | 漏洞编号 | CVE-2026-23111 | | | | 公开时间 | 2026-02-13 | POC状态 | 已公开 | | 漏洞类型 | 权限提升 | EXP状态 | 未公开 | | 利用可能性 | 高 | 技术细节状态 | 已公开 | | CVSS 3.1 | 7.8 | 在野利用状态 | 未发现 |

01

漏洞影响范围

受影响版本:

该漏洞在 Linux 内核 6.4 版本中被引入,从 6.4 开始的主线版本在修复之前均受到影响,具体修复版本如下所示:

  • 在 5.15 LTS 分支中,5.15.200 及之后版本已修复;
  • 在 6.1 LTS 分支中,6.1.163 及之后版本已修复;
  • 在 6.6 LTS 分支中,6.6.124 及之后版本已修复;
  • 在 6.12 LTS 分支中,6.12.70 及之后版本已修复;
  • 在 6.18 LTS 分支中,6.18.10 及之后版本已修复

02

修复建议

正式防护方案

官方发布了正式的修复Patch,详情如下:

diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.cindex c3613d8e7d725..3bf88c137868a 100644--- a/net/netfilter/nf_tables_api.c+++ b/net/netfilter/nf_tables_api.c@@ -5700,7 +5700,7 @@ staticvoidnft_map_catchall_activate(const struct nft_ctx *ctx,
   list_for_each_entry(catchall, &set->catchall_list, list) {     ext = nft_set_elem_ext(set, catchall->elem);-    if (!nft_set_elem_active(ext, genmask))+    if (nft_set_elem_active(ext, genmask))continue;
     nft_clear(ctx->net, ext);

在Patch中删除一个”!”字符,执行了正确的逻辑,修复问题。

03

漏洞描述

近期,有研究人员公开了CVE-2026-23111的漏洞详情,以及利用方法。经过深入分析,360漏洞研究院复现了该漏洞的利用。

Linux内核nf_tables子系统中nft_map_catchall_activate()函数存在一个逻辑取反错误。该函数在事务Abort(回滚)阶段被调用,用于重新激活在失败事务的Prepare阶段被停用的catchall map元素。然而,由于条件判断中多了一个”!”取反符号,导致函数跳过了需要重新激活的非活跃元素。

这一逻辑错误导致对于包含NFT_GOTO裁决的catchall元素,nft_data_hold()永远不会被调用来恢复chain->use引用计数。攻击者可以通过反复触发abort路径来持续递减chain->use,最终使其归零。此时,攻击者可以成功删除该chain,导致chain结构体被释放,而仍有map元素引用该chain的指针,形成Use-After-Free。该漏洞可被本地非特权用户利用实现本地权限提升(LPE)。

背景知识

nf_tables使用以下方式提交事务模型:

  1. Prepare阶段构建下一代对象状态,

  2. Commit阶段翻转gencursor激活新一代,

  3. Abort阶段按反序撤销Prepare阶段的操作。

genmask机制:使用2位位掩码(genmask)跟踪对象在不同代中的活跃状态。genmask中的位被置位表示对象在该代中不活跃。当元素活跃nft_set_elem_active()返回true。

chain->use引用计数:记录引用该chain的跳转/goto数量,只有use==0时chain才可删除。Map的catchall元素如包含”goto mychain”裁决,会增加mychain->use。

根因分析

漏洞位于net/netfilter/nf_tables_api.c的nft_map_catchall_activate()函数。

if (!nft_set_elem_active(ext, genmask))  // BUG: 多了一个 "!"    continue;

nft_map_catchall_activate()函数中调用nft_set_elem_active(ext, genmask)进行条件判断多了一个”!”取反。导致Abort阶段跳过需要重新激活的不活跃元素,nft_setelem_data_activate()(含nft_data_hold()恢复chain->use)永远不被调用。每次abort循环永久递减chain->use,使其最终归零后chain可被释放,形成UAF。

04

漏洞复现

360 漏洞研究院已在 Ubuntu 24.04 环境下完成漏洞验证。该系统使用了linux-6.12内核源代码,编译后作为目标内核;使用Ubuntu noble作为根文件系统;使用qemu启动执行目标系统。通过在目标系统中以非特权用户执行利用代码获取root权限。

CVE-2026-23111

Linux Kernel NF_TABLES模块Use-After-Free提权漏洞复现

05

时间线

2026年04月22日,360漏洞研究院发布本安全风险通告。

06

参考链接

https://www.cve.org/CVERecord?id=CVE-2026-23111

Reproducing CVE-2026-23111: How one character can change everything

07

更多漏洞情报

建议您订阅360数字安全-漏洞情报服务,获取更多漏洞情报详情以及处置建议,让您的企业远离漏洞威胁。

邮箱:[email protected]

网址:https://vi.loudongyun.360.net

“洞”悉网络威胁,守护数字安全

关于我们

360 漏洞研究院,隶属于360数字安全集团。其成员常年入选谷歌、微软、华为等厂商的安全精英排行榜, 并获得谷歌、微软、苹果史上最高漏洞奖励。研究院是中国首个荣膺Pwnie Awards“史诗级成就奖”,并获得多个Pwnie Awards提名的组织。累计发现并协助修复谷歌、苹果、微软、华为、高通等全球顶级厂商CVE漏洞3000多个,收获诸多官方公开致谢。研究院也屡次受邀在BlackHat,Usenix Security,Defcon等极具影响力的工业安全峰会和顶级学术会议上分享研究成果,并多次斩获信创挑战赛、天府杯等顶级黑客大赛总冠军和单项冠军。研究院将凭借其在漏洞挖掘和安全攻防方面的强大技术实力,帮助各大企业厂商不断完善系统安全,为数字安全保驾护航,筑造数字时代的安全堡垒。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:360漏洞研究院 360漏洞研究院 360漏洞研究院《【利用已复现】一个“!”引发的“血案”(Linux Kernel NF_TABLES模块提权漏洞)》

评论:0   参与:  0