Dirty Frag:一种新的 Linux 漏洞,可使用户立即获得 root 权限,且目前尚无补丁可用。

  • Dirty Frag 漏洞利用两个内核漏洞,自 2017 年以来在大多数 Linux 发行版中实现本地权限提升至 root。
  • 目前还没有官方补丁或分配的 CVE 编号;由于安全禁令被打破,披露速度加快。
  • 该漏洞会影响快速解密路径上的 esp4、esp6 和 rxrpc,并且只需一条命令即可利用,不存在竞争条件。
  • 建议的缓解措施是阻止易受攻击的模块(esp4、esp6、rxrpc),尤其是在 Linux 服务器上。

脏碎片

Linux 社区面临着新的挑战 本地权限提升的关键漏洞 它被戏称为“肮脏碎片”,是在裁决公布仅一周后被发现的。 复制失败详细解释这一新的安全问题 在GitHub上这使得任何没有权限的本地用户都能在大多数当前的 Linux 发行版上获得 root 访问权限,而最令人担忧的是,就目前而言, 目前尚无官方补丁或分配的 CVE 编号。.

Dirty Frag 已提前发布。 违反安全禁运第三方泄露了部分研究信息,导致研究人员在内核维护者和发行版尚未准备好补丁的情况下,就公布了技术细节和概念验证。这使得系统管理员陷入了进退两难的境地:漏洞易于利用,但目前尚无明确的解决方案。

Dirty Frag是什么?为什么它会引起如此多的关注?

Dirty Frag 被呈现为 Copy Fail 的直接继承者 它与 Dirty Pipe 漏洞属于同一类漏洞。所有这些漏洞都遵循一个共同的基本原理: 利用内核页面缓存管理中的漏洞也就是说,Linux 为了提高性能,会在内存中维护这些文件副本。

实际上,这种攻击达到了这个目的。 内核本身会覆盖页面缓存中的内容。 攻击者无需拥有文件的写入权限即可写入该文件。这种受控覆盖操作构成了一种任意写入原语,如果被正确利用,只需一次漏洞利用即可将权限提升至 root。

据韩国研究员金贤宇(Hyunwoo Kim,又名 @v4belDirty Frag 不是一个简单的偶发性 bug,而是一个 逻辑漏洞类别 它扩展了与 Dirty Pipe 和 Copy Fail 同属一个漏洞家族的漏洞利用方式。它不依赖于时间或竞争条件,这意味着该漏洞利用方式是确定性的,即使失败也不会导致内核崩溃,并且具有…… 极高的成功率 在脆弱的系统中。

利用两个漏洞联手获取 root 权限

Dirty Frag 的一个关键特性是它并非基于单一故障,而是基于…… 它将两个不同的 Linux 内核漏洞串联起来。 实现对现代系统近乎普遍的攻击:

  • xfrm-ESP 页面缓存写入 – IPsec/ESP 网络协议栈(esp_input() 函数)中的漏洞,该漏洞是在……中引入的 2017年1月提交 (cac2661c53f3)。允许 4字节存储 直接存储在页面缓存中,位置和值由攻击者控制。
  • RxRPC 页面缓存写入 – RxRPC/rxkad 子系统(函数 rxkad_verify_packet_1())出现故障,自 2023年XNUMX月它向页面缓存执行 8 字节的写入操作,利用解密过程,无需创建命名空间的权限,密钥可以是 完全从用户空间进行暴力破解.

第一个漏洞存在于 IPsec (xfrm) 子系统中,当……时会被利用。 具有拼接页的非线性套接字缓冲区 (页面缓存中的页面通过诸如以下操作关联) splice(2) o sendfile(2))通过编写(来规避复制验证)skb_cow_data()在这种情况下,ESP 快速解密路径直接写入这些页面,从而为修改非特权进程引用的数据打开了方便之门。

对于 RxRPC 而言,解密路径 对页面缓存中的页面应用就地解密 这些数据也由用户“锚定”,但不需要创建命名空间等特殊权限。攻击者在用户空间准备一个加密块,使得当内核解密时, 结果正是想要的写作效果。 在记忆中。

为什么脏碎片几乎会影响所有发行版

单独来看,这两个漏洞都无法涵盖所有​​情况。xfrm-ESP漏洞利用需要非特权用户才能进行。 创建用户命名空间在某些 Ubuntu 配置中,AppArmor 会阻止这种行为。相比之下,RxRPC 漏洞利用不需要命名空间,但该模块需要。 默认情况下不包含 rxrpc.ko。 在大多数企业发行版中,例如某些版本的 RHEL。

Dirty Frag 的关键在于 以互补的方式使用这两种利用途径在允许用户命名空间的系统中,首先触发 ESP 变体;在像许多 Ubuntu 安装这样的环境中,命名空间创建受到限制,但 rxrpc 模块默认加载,此时则触发 RxRPC 变体。因此, 一条攻击路线的“盲区”会被另一条路线覆盖。实现了几乎普遍适用的漏洞利用。

已确认受影响的地区包括: Ubuntu的24.04.4不同版本 RHEL 10.1、CentOS Stream 10、AlmaLinux 10、Fedora 44 和 openSUSE Tumbleweed这同样适用于其他流行的平台,例如 Arch Linux 或 Windows 上的 WSL2 环境。实际上,这意味着如果 Linux 服务器和桌面电脑安装了相关模块和配置,则很大一部分都可能存在安全漏洞。

与复制失败和其他近期失败事件的关系

“脏碎片”漏洞紧随“复制失败”(CVE-2026-31431)之后出现,后者已经强制执行。 加速跨多个 Linux 发行版的补丁更新 面对一个正在被积极利用的权限提升漏洞,两者都采用了滥用页面缓存和快速 I/O 路径的思路,但 Dirty Frag 有一个令人担忧的优势: 即使在已应用复制失败缓解措施的系统上,它也能正常工作。例如模块锁 algif_aead 或政策 内核锁定.

研究人员指出,脏碎片可以被触发。 无论 algif_aead 模块是否启用或被阻止换句话说,即使生产服务器已经实施了 Copy Fail 建议,在内核更新特定补丁或应用临时缓解措施之前,它仍然容易受到这种新漏洞的攻击。

对商业环境的影响

在这样的背景下 Linux 被广泛应用于数据中心、云服务提供商和政府机构。Dirty Frag 存在很高的内部网络横向升级风险。攻击者一旦获得普通用户访问权限(例如,通过窃取的凭据、易受攻击的 Web 应用程序或配置错误的服务),就可能发起攻击。 我可以立即获得本地 root 权限。 而且无需利用复杂的条件。

对于那些在 Ubuntu、RHEL、CentOS Stream、Fedora 或 AlmaLinux 等发行版上运行关键业务服务的组织而言,问题并非仅限于单一供应商:漏洞 它存在于 Linux 内核本身中。一些项目,例如 AlmaLinux,已经开始着手研究 早期测试补丁然而,截至发稿时,仍未有广泛部署的官方解决方案。

这种情况迫使许多安全和系统团队实施 临时措施检查您的服务器和工作站清单,并优先考虑拥有交互式 shell 或能够在系统上运行二进制文件的用户环境,以及安全凭据(例如, 更改root密码),因为这正是 Dirty Frag 利用的向量。

内核故障位于何处?

从技术层面来说,Dirty Frag 位于 快速原地解密路线 内核的 esp4、esp6 和 rxrpc 网络模块支持此功能。当网络数据包以 ESP 或 RxRPC 封装到达时,接收路径会尝试在不进行额外数据复制的情况下对其进行解密,以提高性能。

当这些软件包包含以下内容时,问题就出现了: 并非由内核独占的分页内存碎片例如,页面缓存中与以下操作关联的页面: splice o MSG_SPLICE_PAGES内核并没有使用私有缓冲区,而是直接操作私有缓冲区。 直接在这些共享页面上写作这些文件仍然被一个非特权用户进程引用。这会暴露数据的明文,或者更糟糕的是,允许对数据进行蓄意篡改。

根据安全邮件列表上发布的分析,例如 oss-security 和 netdev2017 年 1 月引入 xfrm-ESP 漏洞的提交也是之前缓冲区溢出漏洞 (CVE-2022-27666) 的根源,这表明 代码中的同样改动引发了多个安全问题。 这些年。

缺乏补丁和违反禁运

Dirty Frag 被私下举报给了 Linux 内核维护者于 2026 年 4 月 30 日原计划是将信息保密至 5 月中旬,以便有时间准备补丁、协调补丁的发布和分发,并最大限度地减少曝光窗口。

然而,与协调过程无关的第三方发布了 5月7日ESP漏洞利用详情打破禁令。面对这种情况,研究人员决定公开所有信息,包括…… 能够通过单个命令获取 root 权限的功能性概念验证结果是,大多数发行机构和世界其他地区都被迫仓促应对,而没有准备好解决方案。

在披露之时, 主内核树中没有官方补丁。 主流厂商也没有发布更新版本。一些供应商,例如 AlmaLinux,发布了用于内部测试的初步补丁,但管理员仍然主要依赖配置层面的缓解措施。

如何在等待补丁期间缓解脏碎片问题

在缺乏即时更新的情况下,安全社区的一般建议是: 阻止或禁用相关内核模块 裁决中: esp4, esp6 y rxrpc这样可以防止加载或使用易受攻击的路由,从而大幅减少攻击面。

对于大多数桌面系统和通用服务器而言,这些模块 他们不是必不可少的因为它们主要与 IPsec 功能(网络流量加密)和 RxRPC(一种在标准部署中不太常见的远程过程调用机制)相关。然而,在使用的环境中 基于ESP的IPsec VPN 或其他特定服务;禁用它们可能会影响连接,应评估相关风险。

一种快速且自动化的缓解方法是创建 modprobe 配置,强制将易受攻击的模块替换为无害的二进制文件,并卸载已激活的模块。多个安全资源都分享了类似于以下的命令行:

sudo sh -c "printf 'install esp4 /bin/false
install esp6 /bin/false
install rxrpc /bin/false
' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp4 esp6 rxrpc 2>/dev/null; true"

此命令会创建文件 /etc/modprobe.d/dirtyfrag.conf 包含阻止模块的规则 esp4, esp6 y rxrpc 重新加载它们,如果它们已经在内存中,则尝试卸载它们。对于绝大多数 Web 服务器、数据库或基础设施中的常见业务应用程序而言, 它不应该造成中断但是,始终建议先在预生产环境中进行测试。

概念验证和实际应用风险

随着 Dirty Frag 的公开发布,该研究人员还发表了一篇 包含概念验证代码的存储库这样一来,只需几个命令即可编译并执行该漏洞利用程序。生成的二进制文件将两条攻击路径(ESP 和 RxRPC)连接起来,并且在易受攻击的系统上, 立即将当前用户提升到 root 权限。.

一些分析过此次故障的技术资料表明,他们已经能够…… 在不同的发行版中重现该漏洞。这包括已更新的 Arch Linux 系统以及安装了最新主要内核的系统。甚至有研究发现,像 WSL2 这样越来越多地被开发者使用的环境,如果底层内核满足必要条件,也会出现同样的问题。

一个易于使用的公开漏洞利用程序与一个 没有可用补丁的窗口 这增加了恶意组织尝试将 Dirty Frag 整合到其攻击链中的可能性。对于许多组织而言,这意味着需要紧急审查其访问控制措施,加强内部网络分段,并强化对 Linux 服务器上可疑活动的监控。

分发响应和后续步骤

尽管这一消息令生态系统中的许多人感到意外,但一些Linux系统提供商已经开始采取行动。 针对受影响的解密路径,制定特定的补丁方案研究人员本人已将 RxRPC 部分的修复程序发送到邮件列表。 netdev 预计到四月底,解决方案将在未来几天或几周内集成到内核的稳定分支中。

对于具有强存在性的分布,例如 Ubuntu、Debian、RHEL、SUSE、openSUSE、Fedora 或 AlmaLinux重点在于通过常规安全渠道发布经过充分测试的内核更新。同时,敦促管理员和IT经理…… 密切关注安全公告 官方仓库发布更新后,请立即应用更新。

最近在 Dirty Pipe、Copy Fail 和现在的 Dirty Frag 方面的经验凸显了以下问题的必要性: 改进内核关键部分的安全审查尤其是在高速网络和 I/O 路径等高性能领域,激进的优化可能会引入细微但非常危险的错误。

Dirty Frag 的出现,以及其他一些近期出现的漏洞,再次凸显了维护的重要性。 敏捷更新策略和纵深防御控制 在任何 Linux 基础架构上都存在此漏洞。虽然目前还没有针对此漏洞的最终补丁,但禁用相关模块、监控系统并做好快速部署未来内核更新的准备,已成为目前最大限度降低此新型攻击途径影响的最佳应急方案。

Sudo漏洞
相关文章:
Sudo漏洞可能使攻击者在Linux系统上具有root用户访问权限

添加为首选来源