DENNISDGR/CVE-2026-31431-poc
GitHub: DENNISDGR/CVE-2026-31431-poc
针对 CVE-2026-31431(Copy Fail)Linux 内核提权漏洞的改良版 PoC,支持自定义命令参数以适配非交互式环境下的漏洞利用与验证。
Stars: 0 | Forks: 0
# Copy Fail 命令 PoC 包装器
一个针对 **Copy Fail / CVE-2026-31431** 的小型修改版概念验证(PoC)包装器,允许从终端传递自定义命令,而不是每次都启动交互式 root shell,从而使其能够在 Web Shell 等非交互式环境中运行。
本项目基于公开的 Copy Fail 研究和 PoC。
## ⚠️ 免责声明
本仓库仅出于**教育、研究和防御性验证目的**提供。
请仅在您拥有或已获得明确授权进行测试的系统上运行此代码。
此 PoC 可能会损坏目标二进制文件(例如 `/usr/bin/su`)的内存页缓存。
请**勿**在生产系统上运行此代码。
## 背景
**Copy Fail**,被追踪为 **CVE-2026-31431**,是一个 Linux 内核本地权限提升漏洞,涉及内核加密 API,具体为 `AF_ALG` / `algif_aead` 路径。
从宏观上看,该漏洞可允许对可读文件的页缓存进行可控写入。公开演示通常以 `/usr/bin/su` 等 SUID 二进制文件为目标来获取 root 权限。
本仓库**并未**声明发现了该漏洞。它只是对公开的 PoC 行为进行的小幅修改/包装,以支持可配置的命令载荷。
## 致谢
完全归功于原作者和研究人员的原创研究、漏洞披露和公开 PoC:
- THEORI Copy Fail PoC:
https://github.com/theori-io/copy-fail-CVE-2026-31431
- Copy Fail 官方网站:
https://copy.fail/
- Xint 技术分析文章:
https://xint.io/blog/copy-fail-linux-distributions
请阅读并参考原始资料以获取真正的漏洞分析。
## 此版本的更改
最初的公开 PoC 非常紧凑,并使用了固定的嵌入式载荷。
此版本增加了:
- 命令行参数支持
- 可配置的命令执行
- 测试时更清晰的输出
## 要求
目标系统必须暴露所需的 Linux crypto socket 接口。
该 PoC 依赖于:
- Linux
- Python 3
- `AF_ALG` 支持
- `algif_aead` 支持
- 存在漏洞的内核版本/配置
- 可读的目标 SUID 二进制文件,通常为 `/usr/bin/su`
## 使用方法
默认验证:
```
python3 CVE-2026-31431.py
```
这将尝试执行:
```
id > /tmp/id.txt
```
然后验证:
```
cat /tmp/id.txt
```
自定义命令:
```
python3 CVE-2026-31431.py -c 'ls -la /root'
```
## 恢复 `/usr/bin/su`
如果您针对 `/usr/bin/su` 进行了测试,请在测试后将其恢复。
在 Debian/Ubuntu 上:
```
sudo apt install --reinstall util-linux
```
## 备注
本仓库仅是对公开的 Copy Fail PoC 行为的小型适配。漏洞研究、根本原因分析和原始利用技术均属于原始研究人员。
再次向以下内容致敬并致谢:
- https://github.com/theori-io/copy-fail-CVE-2026-31431
- https://copy.fail/
- https://xint.io/blog/copy-fail-linux-distributions
标签:AF_ALG, Copy Fail, CVE-2026-31431, Exploit Wrapper, PoC, Root提权, SUID提权, Webshell, Web报告查看器, 内核密码学API, 内核漏洞, 安全渗透, 数据展示, 暴力破解, 本地提权, 概念验证, 漏洞复现, 特权提升, 红队, 网络安全, 脏页写入, 自动化部署, 隐私保护, 页面缓存