文章
Dirty Frag:Linux内核零拷贝提权漏洞解析
阅读数据加载中…
点赞数据加载中…
引言
Linux 内核的安全防线再次遭遇严峻挑战。韩国安全研究员 Hyunwoo Kim(@v4bel)发现并报告了一个严重的本地提权漏洞,代号 Dirty Frag。该漏洞的 PoC(概念验证代码)已于 2026 年 5 月 7 日在 GitHub 公开,攻击者仅需通过单行命令即可完成编译并执行,其便捷性与破坏力令人警惕。
关键信息
Dirty Frag 并非凭空出现,它属于与 Dirty Pipe(CVE-2022-0847)和 Copy Fail 相同的漏洞类别,核心问题均源于零拷贝发送路径上的设计缺陷。具体技术细节如下:
- 漏洞机理:
splice()系统调用将攻击者仅有读权限的 page cache 页直接钉入struct sk_buff的 frag 槽中。然而,接收侧的内核代码对该 frag 执行原地(in-place)加密或解密操作,导致原本只读的 page cache 被意外写入。 - 利用路径:该漏洞由两个独立模块链式组合构成,互相覆盖了对方的限制,使得单一攻击程序可在几乎所有主流 Linux 发行版上生效:
- IPsec ESP 模块:该模块存在约 9 年历史,自 2017 年起受影响。利用此路径可将
/usr/bin/su替换为恶意程序,但需要创建用户命名空间的权限。 - RxRPC 协议模块:自 2023 年起受影响。利用此路径可清空
/etc/passwd中 root 的密码字段,且完全无需任何特殊权限。
- IPsec ESP 模块:该模块存在约 9 年历史,自 2017 年起受影响。利用此路径可将
为什么值得关注
- 利用门槛极低:PoC 的公开且执行简单,意味着自动化攻击脚本可能迅速在野流行,大量未修补的系统面临即时风险。
- 影响范围深远:由于涉及内核底层机制,且两个利用变体互补,几乎覆盖了所有主流 Linux 环境,无论是服务器还是桌面端均难幸免。
- 历史教训重演:作为 Dirty Pipe 的“近亲”,它再次证明了零拷贝优化在安全性与性能平衡上的脆弱性,提醒开发者在追求性能时需重新审视内存安全边界。
可延展观察
- 内核补丁策略:Linux 社区将如何修复此类深植于零拷贝路径的结构性问题?是否会引入更严格的内存访问控制机制?
- 企业级响应:各大云服务商和 Linux 发行版维护者(如 Red Hat, Ubuntu, Debian)的补丁推送速度及兼容性测试情况值得持续跟踪。
- 检测与防御:在补丁发布前,系统管理员应如何监控异常的内核内存写入行为?现有的 EDR(端点检测与响应)方案是否具备对此类内核级提权的有效检测能力?