跳至正文
Wener Notes

CVE-2026-46300

约 3 分钟阅读
  • Fragnesia - Linux 网络缓冲区合并时丢失共享片段标记,可通过 ESP-in-TCP 路径修改文件页缓存并本地提权
  • 公开披露:2026-05-13;CVE 记录公开:2026-05-23
  • 上游根因引入版本:Linux 3.9
    • 这是 skb_try_coalesce() 缺陷的历史范围,不代表公开的 ESP-in-TCP 利用在 3.9 即可运行
  • 严重性:CVSS 3.1 7.8 High(Linux CNA)
    • CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
  • Red Hat 将其作为 Dirty Frag 漏洞集合的后续变体; 则是其中的 RxRPC 问题

成因与利用条件

  • skb_try_coalesce() 将源缓冲区的页片段合并到目标缓冲区时,没有传播 SKBFL_SHARED_FRAG
  • 合并后的缓冲区仍指向文件页缓存,却失去共享标记,ESP 输入因此可能跳过写时复制并原地写入
  • 需要本地执行、可读目标文件、可达的 ESP-in-TCP 功能,以及配置 XFRM SA 所需的 CAP_NET_ADMIN
    • 普通用户的公开利用路径通常借助用户及网络命名空间取得该能力
    • 通用 skb 合并缺陷与已公开的 ESP-in-TCP 利用路径应分开理解
  • 已安装 仍不足以修复本条,需要补上合并过程的标志传播

修复与缓解

上游分支Linux CNA 列出的修复版本
5.105.10.257
5.155.15.208
6.16.1.174
6.66.6.141
6.126.12.91
6.186.18.33
7.07.0.10
主线正式版7.1
  • 上游修复:f84eca581739,转移页片段时保留源缓冲区的共享标志
  • 安装并运行覆盖此 CVE 的发行版内核;不要只检查较早 Dirty Frag 公告是否已处理
  • 暂时让 ESP 输入功能不可达,或限制非特权用户命名空间,可阻断已知利用的部分前提
    • ESP 模块措施会影响 IPsec/VPN,内建功能和已加载模块需分别处理
    • 用户命名空间限制不覆盖已有 CAP_NET_ADMIN 的任务,也不覆盖 RxRPC 漏洞
  • 禁用 ESP-in-TCP 只针对已披露入口,不能等同于修复通用 skb 合并逻辑

PoC

  • 作者仓库 v12-security/pocs 的 fragnesia/fragnesia.c 提供独立 Fragnesia PoC
  • README 描述通过用户及网络命名空间配置 XFRM,并经 ESP-in-TCP 路径改写 /usr/bin/su 的页缓存,随后启动特权会话
  • 原理示意:
text
带共享标记的文件页片段
  -> skb 合并后仍引用原页,但标记丢失
  -> ESP 误判为私有数据,跳过复制
  -> 原地处理改变文件页缓存
  • 作者报告的测试环境包括 x86-64 Ubuntu 6.8.0-111-generic;命名空间限制等策略可能阻止其公开实现,不能把该测试结果推广到所有同号内核
  • 该程序会影响后续 su 执行;作者报告磁盘二进制未直接改写,不代表页缓存污染没有副作用

参考

关联信息

反向链接、本文链接的其他页面和外部资料。

反向链接

  • CVE-2026-43284
    笔记 · Fragnesia

    Dirty Frag - xfrm-ESP 共享片段被原地解密,导致文件页缓存被修改,可用于本地提权 · Dirty Frag 原始披露还包含 CVE-2026-43500 的 RxRPC 路径;两者有独立的根因与利用条件 · Dirty Frag 公开披露:2026-05-07;本 CVE 记录公开:2026-05-08

  • CVE-2026-43500
    笔记 · CVE-2026-46300

    Dirty Frag - RxRPC 对共享片段原地处理,导致文件页缓存被修改,可用于本地提权 · 属于 Dirty Frag 的 RxRPC 部分;Fragnesia 对应 CVE-2026-46300 · CVE 记录公开:2026-05-11

站内链接

  • CVE-2026-43284
    笔记 · Dirty Frag ESP 修复

    Dirty Frag - xfrm-ESP 共享片段被原地解密,导致文件页缓存被修改,可用于本地提权 · Dirty Frag 原始披露还包含 CVE-2026-43500 的 RxRPC 路径;两者有独立的根因与利用条件 · Dirty Frag 公开披露:2026-05-07;本 CVE 记录公开:2026-05-08

  • CVE-2026-43500
    笔记 · CVE-2026-43500

    Dirty Frag - RxRPC 对共享片段原地处理,导致文件页缓存被修改,可用于本地提权 · 属于 Dirty Frag 的 RxRPC 部分;Fragnesia 对应 CVE-2026-46300 · CVE 记录公开:2026-05-11

参考资料

GitHub4 条
其他外链3 条
最近更新commit 0c5208b编辑