一个 732 字节的 Python 脚本,可在 2017 年以来几乎所有 Linux 发行版上 100% 可靠提权至 root,且可作为容器逃逸。
📋 漏洞详情
CVE 编号 CVE-2026-31431
别名 Copy Fail
严重程度 🔴 高危 (CVSS 7.8)
类型 本地权限提升 (LPE)
披露时间 2026-04-29
发现者 Theori / Xint Code (AI 辅助代码审计发现)
影响范围 2017 年以来几乎所有 Linux 发行版内核
利用代码 已公开 (732 字节 Python 脚本,纯标准库)
利用可靠性 100% 可靠,无需竞态条件,无需内核偏移量
🎯 技术原理
漏洞根源位于 Linux 内核加密子系统的 `algif_aead` 模块:
1. 2017 年引入的 in-place AEAD 优化:`AF_ALG` socket 处理 AEAD 解密时,将 page cache 页面直接放入可写的 scatterlist。
2. 攻击者通过 `splice()` 零拷贝:把任意可读文件(如 `/usr/bin/su`)的 page cache 页面传入 `AF_ALG` socket。
3. `authencesn` 算法的 4 字节越界写入:`crypto_authenc_esn_decrypt()` 将目标缓冲区当作 scratch space,在输出边界外写入 4 字节 `seqno_lo`,且永不恢复原始数据。
4. 结果:单次直线执行即可篡改内存中的 page cache,无需 race、无需重试。
> 关键点:仅修改内存 page cache,不触碰磁盘 → 无 inotify 事件、无 dirty 标记、文件完整性工具在磁盘上检测不到异常。
💥 利用效果
- 本地提权:任意无权限用户 → `root`
- 容器逃逸:page cache 主机级共享,Pod 内可直接篡改节点上任意可读文件
- K8s 节点沦陷:一个容器逃逸 = 整个节点被接管
- CI/CD 致命:GitHub Actions / GitLab Runner 执行不可信 PR 代码时直接提权
- 隐蔽性极高:重启或 `drop_caches` 后自动恢复,取证困难
🖥️ 已确认受影响发行版
- Ubuntu 24.04 LTS
- Amazon Linux 2023
- RHEL 14.3
- SUSE 16
- Debian / Fedora / Arch / Rocky / AlmaLinux / Oracle Linux 等
🛡️ 加固建议(按优先级)
1️⃣ 首选:立即打补丁
升级至已修复内核版本,上游补丁 commit:
a664bf3d603dc3bdcf9ae47cc21e0daec706d7a5
ce42ee423e58dffa5ec03524054c9d8bfd4f6237
fafe0fa2995a0f7073c1c358d7d3145bcc9aedd8
修复逻辑:将 in-place AEAD 回退为 out-of-place 操作,分离源/目标 scatterlist,彻底杜绝 page cache 写入路径。
2️⃣ 应急缓解(无法立即重启时)
禁用 algif_aead 内核模块
sudo tee /etc/modprobe.d/disable-algif-aead.conf <<<'install algif_aead /bin/false'
sudo rmmod algif_aead 2>/dev/null
禁用后 `AF_ALG` AEAD 操作将不可用,但可阻断利用链。
3️⃣ 加固措施
seccomp:限制容器/沙箱内进程创建 `AF_ALG` socket
-SELinux/AppArmor:限制哪些进程可访问加密 socket 接口
审计监控:关注 `AF_ALG` 异常调用模式 & page cache 完整性校验
⚠️ 高危场景(强烈建议立即处理)
场景 风险等级
多租户共享主机 / 开发跳板机 🔴 极高
Kubernetes / 容器集群 🔴 极高
CI/CD Runner(自托管 GitHub Actions / GitLab / Jenkins) 🔴 极高
云 SaaS 运行用户代码环境(Notebook / Serverless) 🔴 极高
单用户个人笔记本 🟡 中低(仍建议打补丁)
📎 参考资源
- 官方披露:https://copy.fail
- PoC 代码:https://github.com/theori-io/copy-fail-CVE-2026-31431
- 技术分析:https://xint.io/blog/copy-fail-linux-distributions
- NVD 条目:https://nvd.nist.gov/vuln/detail/CVE-2026-31431
- The Register 报道:https://www.theregister.com/2026/04/30/linux_cryptographic_code_flaw/
💡 结语:这是继 Dirty Cow (2016)、Dirty Pipe (2022) 后又一枚 Linux 内核本地提权大杀器。与前辈不同,Copy Fail 无需竞态条件、无需版本适配、单次执行必中。多租户、容器、CI 环境请立即评估影响并优先打补丁。