Linux内核流量控制子系统中 newly disclosed flaw(新披露漏洞)现已分配CVE-2026-46331编号,被命名为“Pedit COW”,该漏洞可使任意非特权本地用户在受影响系统上获取完整root权限。
自2026年6月16日CVE正式分配后24小时内,名为packet_edit_meme的可用概念验证漏洞利用代码即在GitHub公开,未修复系统的威胁窗口被急剧压缩。
漏洞根因存在于act_pedit流量控制模块中负责动态重写数据包头部的内核函数tcf_pedit_act()。
该函数本应遵循写时复制(Copy-on-Write)机制,在修改内存页前创建私有副本。然而,关键的执行顺序错误导致可写范围在运行时偏移量完全解析前即被验证。
部分编辑键仅在执行时才计算最终目标位置,这意味着写入操作可能完全超出私有副本范围,直接破坏共享的页缓存页面——该页面可能正缓存着/bin/su等可执行文件。
此缺陷由提交记录899ee91156e5悄然引入,影响范围覆盖v5.18至v7.1-rc7的所有内核版本。
2026年5月下旬,修复补丁虽已出现在netdev邮件列表,但仅被标注为常规数据损坏修复,既无CVE引用也无安全通告,导致漏洞暴露窗口远超必要时长。
安全研究人员立即将其与Dirty Pipe、DirtyClone及Dirty Frag等漏洞相提并论——这些Linux内核漏洞均通过向非独占页面写入的方式滥用内核快速路径。
Pedit COW符合相同模式,但引入了一个尤为危险的入口点:非特权用户可通过用户命名空间内部配置流量控制操作,无需任何系统级权限即可获取命名空间本地的CAP_NET_ADMIN能力。
漏洞利用工具packet_edit_meme将此效应发挥到极致:
生成用户命名空间子进程以获取CAP_NET_ADMIN;
利用COW机制缺陷篡改内核页缓存中/bin/su的内存ELF镜像;
将二进制文件入口点覆盖为执行setgid(0)→setuid(0)→execve("/bin/sh")的shellcode。
当被污染的二进制文件触发时,直接弹出root shell。
由于攻击全程仅在内存中操作且不触及磁盘文件,文件完整性监控工具在整个攻击链中均无法检测到异常。
受影响发行版
2026年6月测试确认以下系统可成功利用:
| 发行版 | 内核版本 | 结果 |
|---|
| RHEL 10.0 | 6.12.0-228.el10 | ROOT |
| Debian 13 Trixie | 6.12.90+deb13.1 | ROOT |
| Ubuntu 24.04.4 | 6.17.0-22 | ROOT (AppArmor绕过) |
| Ubuntu 26.04 | 7.0.0-14-generic | FAIL |
在Ubuntu 24.04.4中,AppArmor对非特权命名空间的限制被aa-exec配合宽松容器配置文件绕过。Ubuntu 26.04虽完全封堵此路径,但其底层内核对COW原语本身仍存在技术漏洞。
红帽确认RHEL 8、9、10及依赖平台(包括Red Hat OpenStack Platform、Red Hat Virtualization和RHEL CoreOS)均受影响。
Debian已为Trixie发布补丁,但Debian 11和12仍未修复。截至2026年6月25日,Ubuntu确认从18.04至26.04所有受支持版本均存在漏洞。
缓解措施
1. 完整修复方案
安装补丁内核并重启是唯一彻底解决方案。需优先处理多租户主机、Kubernetes节点、CI/CD运行器及共享构建环境,此类系统面临最高利用风险。
2. 临时缓解方案
若无法立即修补,可通过以下命令禁用act_pedit模块:
bash
编辑
echo 'install act_pedit /bin/true' | sudo tee /etc/modprobe.d/disable-act_pedit.conf
在RHEL上设置user.max_user_namespaces=0,或在Debian/Ubuntu上设置kernel.unprivileged_userns_clone=0以禁用非特权用户命名空间,可阻断漏洞入口点。但此操作将破坏无根容器和浏览器沙箱功能,需先行测试。
3. 入侵响应
任何疑似运行过该漏洞利用的主机均应视为完全沦陷,因其攻击全程仅在内存中进行,文件完整性检测工具无法捕获痕迹。
本公众号所载文章为本公众号原创或根据网络搜索下载编辑整理,文章版权归原作者所有,仅供读者学习、参考,禁止用于商业用途。因转载众多,无法找到真正来源,如标错来源,或对于文中所使用的图片、文字、链接中所包含的软件/资料等,如有侵权,请跟我们联系删除,谢谢!