
在 Copy Fail 漏洞(CVE-2026-31431)闹得沸沸扬扬之际,Linux 安全圈再次炸锅。韩国安全研究员 Hyunwoo Kim(@v4bel)正式披露了一个被命名为 “Dirty Frag” 的高危漏洞链。
这个漏洞链之所以恐怖,是因为它不依赖复杂的竞态条件(Race Condition),而是一个极其稳定的确定性逻辑漏洞。它直接继承了当年 Dirty Pipe 的“优良传统”,通过污染内核页缓存(Page Cache),让普通用户在没有文件写权限的情况下,强行让内核覆写内存中的敏感文件副本。
漏洞成因:九年“陈酿”与两个模块的合谋
根据研究员在 GitHub 仓库 披露的技术细节,Dirty Frag 实际上由两个独立的 Page-Cache Write 漏洞串联而成:一个是存在于 IPsec 子系统的 xfrm-ESP 漏洞,另一个是 RxRPC 协议模块漏洞。
xfrm-ESP 的漏洞代码可以追溯到 2017 年 1 月的一个提交,潜伏期长达 9 年;而 RxRPC 的相关漏洞则是在 2023 年 6 月引入的。
这两个漏洞的共同点在于,当内核处理加密/解密数据包时,如果使用了 MSG_SPLICE_PAGES 等机制,内核会直接在外部引用的页面(如通过 splice 挂载的页面)上进行操作。攻击者可以借此在内核态将恶意数据写入本不该被修改的页缓存中。
为什么要“串联”?为了绕过 Ubuntu 的防护
这正是 Dirty Frag 聪明的地方。单一漏洞往往有局限性:
- xfrm-ESP 变体:虽然威力巨大,具备 4 字节的任意写入能力,但它需要用户拥有创建命名空间(Namespace)的权限。而在 Ubuntu 等系统中, unprivileged user namespace 默认是被 AppArmor 拦截的。
- RxRPC 变体:不需要特殊权限,但在很多发行版(如 RHEL)中默认不加载
rxrpc.ko模块。然而,Ubuntu 偏偏默认加载了这个模块。
通过将两者结合,攻击者可以实现全平台的“精准打击”:在允许创建命名空间的系统上用 ESP 攻击;在像 Ubuntu 这样拦截命名空间但加载了 RxRPC 的系统上用 RxRPC 攻击。
现状:补丁未到,PoC 已出
由于相关技术细节被第三方意外提前公开,原定的安全禁令(Embargo)已经破裂。虽然 Linux 主线内核已紧急分配了 CVE 编号(xfrm-ESP 对应 CVE-2026-43284,RxRPC 对应 CVE-2026-43500),但各大主流发行版(如 Ubuntu 24.04、RHEL 10.1、Fedora 44 等)的正式修复补丁仍在赶工中。
目前,GitHub 上已经出现了成熟的 PoC 漏洞利用代码,普通用户只需一条命令即可完成从普通权限到 root 权限的跨越。
临时缓解方案
在补丁正式发布前,唯一的自救方案就是彻底封死这两个易受攻击的模块。你可以在终端执行以下命令来屏蔽它们:
sudo sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 rxrpc 2>/dev/null; echo 3 > /proc/sys/vm/drop_caches; true"
注意:执行此操作后,系统的 IPsec VPN(ESP 加密)和 RxRPC 相关功能将失效。但在服务器安全面前,这点牺牲是必须的。
本报道由 圈小蛙(qxwa.com) 科技资讯站特约撰稿。🐸️
圈小蛙