cx330zer0/CVE-2026-31431-Copy-Fail-add-arm64
GitHub: cx330zer0/CVE-2026-31431-Copy-Fail-add-arm64
针对 CVE-2026-31431 Linux 内核本地提权漏洞的 Python 利用脚本,利用 algif_aead 模块中的 page-cache 写入原语实现稳定提权,同时支持 arm64 与 x86 架构。
Stars: 0 | Forks: 1
## 漏洞概述
| 项目 | 内容 |
| ------------- | ---------------------------------------------------- |
| CVE 编号 | CVE-2026-31431 |
| 漏洞名称 | Copy Fail |
| 漏洞类型 | Linux 内核本地提权 (LPE) |
| CVSS 3.1 评分 | 7.8 (HIGH) |
| CWE | CWE-669: Incorrect Resource Transfer Between Spheres |
| 影响范围 | 2017 年至 2026 年 4 月间构建的所有 Linux 内核 |
| CISA KEV | 已列入,截止修复日期 2026-05-15 |
| 公开时间 | 2026-04-29 |
### 漏洞原理
2017 年内核在 `algif_aead` 加密模块中引入了一个原地加密优化(in-place optimization)。该优化导致 page-cache 页面被错误地放入可写的目标 scatterlist 中。攻击者通过 `AF_ALG` socket 与 `splice()` 系统调用组合,可向任意文件(包括 root 所有的只读文件)的 page cache 写入数据。
**攻击链**:`AF_ALG socket` → `splice()` → page-cache 写入原语 → 篡改 setuid 二进制文件 page cache → 执行该文件获取 root 权限
**攻击特点**:
- 无竞态条件(非 race condition,是直接的逻辑缺陷)
- 无需内核调试特性
- 无需特定架构偏移量适配
- 通用利用脚本仅 ~732 字节,跨所有主流发行版有效
## 受影响范围
### 已验证受影响的发行版
| 发行版 | 受影响内核版本 |
| ----------------- | ----------------------- |
| Ubuntu 24.04 LTS | 6.17.0-1007-aws |
| Amazon Linux 2023 | 6.18.8-9.213.amzn2023 |
| RHEL 10.1 | 6.12.0-124.45.1.el10_1 |
| SUSE 16 | 6.12.0-160000.9-default |
Debian、Arch、Fedora、Rocky、Alma、Oracle 等发行版中相同内核范围同样受影响。
### 受影响内核版本范围
凡内核版本低于以下修复版本的均在受影响范围内:
| 稳定分支 | 最低修复版本 |
| -------- | ------------ |
| 5.10.x | ≥ 5.10.254 |
| 5.15.x | ≥ 5.15.204 |
| 6.1.x | ≥ 6.1.170 |
| 6.6.x | ≥ 6.6.137 |
| 6.12.x | ≥ 6.12.85 |
| 6.18.x | ≥ 6.18.22 |
| 6.19.x | ≥ 6.19.12 |
| 7.0.x | ≥ 7.0-rc7 |
## 排查方法
### 1. 检查内核版本
uname -r
将输出与上表中的修复版本对比,低于修复版本则受影响。
### 2. 检查 AF_ALG 连接
# 查看当前是否有 AF_ALG 连接
lsof | grep AF_ALG
# 查看 AF_ALG socket 状态
ss -xa | grep alg
### 3. 检查 algif_aead 模块是否加载
lsmod | grep algif_aead
如果有输出说明模块已加载,存在被利用风险。
### 4. 漏洞验证(仅限授权测试环境)
# 克隆 PoC 仓库
git clone https://github.com/cx330zer0/CVE-2026-31431-Copy-Fail-add-arm64.git
cd CVE-2026-31431-Copy-Fail-add-arm64
# 运行 PoC(需要非特权用户身份)
python3 copy-fail-dual-arch.py
如果 PoC 成功获取 root shell,说明系统存在该漏洞。
如果 PoC 成功获取 root shell,说明系统存在该漏洞。标签:0day, 0day挖掘, AF_ALG, arm64, Copy Fail, CSV导出, CVE-2026-31431, CVSS 7.8, CWE-669, DNS 解析, EXP, Hpfeeds, IT安全, Linux内核, LPE, page-cache, setuid, splice, Web报告查看器, x86, 二进制文件篡改, 代码执行, 内核安全, 安全渗透, 安全漏洞, 提权, 攻击路径可视化, 数据展示, 本地提权, 系统调用, 红队, 网络安全, 跨架构, 逆向工具, 隐私保护, 黑客工具