Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-31431_je_sappelle_RoOt — CVE-2026-31431 - 修复指南与防护措施 | Kitploit
工具/GitHubGitHub/sbeteta42/cve-2026-31431_je_sappelle_root
漏洞分析配置审计学习与教育事件响应精选资源
GitHubsbeteta42/cve-2026-31431_je_sappelle_root

CVE-2026-31431_je_sappelle_RoOt

CVE-2026-31431 - 修复指南与防护措施

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
164个月前尚未审核
分享

CVE-2026-31431 - Copy Fail - Je s'appelle ROOT !#

CVE Type Platform Status

📌 仓库目标

本仓库记录了名为 Copy Fail 的漏洞 CVE-2026-31431,并为可能受影响的 Linux 系统提供防御性修复流程。

⚠️ 本仓库严格面向防御、授权审计、加固和修复。
它不提供利用流程,也不得用于入侵第三方系统。


1. 执行摘要

CVE-2026-31431 / Copy Fail 是 Linux 内核中的一个本地权限提升漏洞。

它涉及内核加密子系统,具体来说是 AF_ALG 用户接口和 algif_aead 模块。该漏洞与 2017 年在 Linux 内核 AEAD 路径中引入的一项优化有关。在某些条件下,非特权本地用户可以在可读文件(尤其是 setuid 二进制文件)的页缓存中触发受控写入,从而可能导致权限提升至 root。

该漏洞被评为 高危,CVSS v3.1 评分为 7.8。


2. CVE 信息


3. 受影响系统

公开来源表明,自 2017 年优化以来,搭载源自易受影响分支内核的 Linux 发行版可能面临风险。

公开出版物中提到的平台示例:

确切状态取决于内核版本、供应商、安全反向移植以及已应用的补丁。


4. 为什么此漏洞至关重要

在不可信用户或工作负载可以访问本地 shell 或共享执行环境的环境中,此漏洞尤其危险。

需要优先考虑的环境:

  • 多用户服务器;
  • 暴露给多个账户的 SSH 服务器;
  • 培训或实验平台;
  • CI/CD 运行器;
  • 构建服务器;
  • Kubernetes 集群;
  • 容器主机;
  • 共享平台;
  • 多租户云环境。

主要风险:

  • 本地权限提升至 root;
  • 主机被入侵;
  • 部分绕过磁盘完整性控制,因为修改可能通过页缓存驻留在内存中;
  • 对共享同一主机内核的容器可能产生影响。

5. 快速验证

5.1 识别内核版本

root@kitploit:~
uname -a
uname -r

5.2 检查 algif_aead 模块是否已加载

root@kitploit:~
lsmod | grep algif_aead || true

5.3 检查是否有 AF_ALG 套接字在使用

root@kitploit:~
sudo lsof -nP | grep AF_ALG || true

5.4 识别已安装的内核包

Debian / Ubuntu

root@kitploit:~
dpkg -l | grep -E '^ii\\s+linux-image|^ii\\s+linux-modules'

RHEL / Rocky / AlmaLinux / Fedora

root@kitploit:~
rpm -qa | grep -E '^kernel|^kernel-core'

SUSE

root@kitploit:~
rpm -qa | grep -E '^kernel'

6. 推荐的修复方案

优先选项:应用供应商内核补丁 正确的修复方法是安装发行版提供的已修补内核,然后重启到该内核。

Debian / Ubuntu

root@kitploit:~
sudo apt update
sudo apt full-upgrade -y
sudo reboot

RHEL / Rocky / AlmaLinux / Oracle Linux

root@kitploit:~
sudo dnf update -y kernel kernel-core kernel-modules
sudo reboot

SUSE

root@kitploit:~
sudo zypper refresh
sudo zypper patch
sudo reboot
# 重启后:
uname -r
  • 然后在发行版的安全跟踪器中验证状态。

7. 临时缓解措施

如果尚无可用的已修补内核,或者无法立即重启,请应用临时缓解措施。

7.1 禁用 algif_aead 的加载

root@kitploit:~
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif-aead.conf

7.2 如果模块已加载则卸载

root@kitploit:~
sudo modprobe -r algif_aead 2>/dev/null || true
sudo rmmod algif_aead 2>/dev/null || true

7.3 如有必要更新 initramfs

Debian / Ubuntu

root@kitploit:~
sudo update-initramfs -u

RHEL / Rocky / AlmaLinux / Oracle Linux

root@kitploit:~
sudo dracut -f

SUSE

root@kitploit:~
sudo mkinitrd

7.4 重启

root@kitploit:~
sudo reboot

7.5 验证模块无法再被加载

root@kitploit:~
sudo modprobe algif_aead
echo $?
  • 预期结果:加载必须失败。

8. 特殊情况:模块编译进内核

在某些内核上,该模块可能直接编译进内核,而不是以模块形式加载/卸载。

  • 指示性检查:
root@kitploit:~
grep CONFIG_CRYPTO_USER_API_AEAD /boot/config-$(uname -r)
  • 可能的结果:
root@kitploit:~
CONFIG_CRYPTO_USER_API_AEAD=m

该组件是模块。通过 /etc/modprobe.d/ 的缓解措施适用。

root@kitploit:~
CONFIG_CRYPTO_USER_API_AEAD=y

该组件已集成到内核中。仅通过 modprobe.d 的缓解措施不够。

在这种情况下,最好使用:

  • 已修补的内核;
  • 供应商提供的 livepatch(如果可用);
  • 供应商文档中记录的启动选项。

某些来源提到以下内核选项作为可能的变通方法:

root@kitploit:~
initcall_blacklist=algif_aead_init

在推广之前必须严格在非生产环境中测试。此选项可能因内核、发行版和启动配置而异。

9. 容器化环境加固

对于 Docker、Podman、Kubernetes 和 CI/CD,需要降低不可信工作负载打开 AF_ALG 套接字的可能性。

建议措施:

  • 在主机节点上应用内核补丁;
  • 尽可能通过 seccomp 阻止或限制 AF_ALG;
  • 避免特权工作负载;
  • 除非绝对必要,否则禁止 privileged: true 容器;
  • 启用 AppArmor、SELinux 或等效机制;
  • 隔离执行不可信代码的 CI/CD 运行器;
  • 优先为敏感工作负载使用专用节点。

10. 检测与监控

10.1 搜索 AF_ALG 的使用

root@kitploit:~
sudo lsof -nP | grep AF_ALG || true

10.2 搜索已加载的模块

root@kitploit:~
lsmod | grep algif_aead || true

10.3 监控关键 setuid 二进制文件

root@kitploit:~
find / -perm -4000 -type f 2>/dev/null

10.4 监控对 /usr/bin/su 的可疑访问

root@kitploit:~
sudo ausearch -f /usr/bin/su 2>/dev/null || true

10.5 auditd 规则示例

root@kitploit:~
sudo auditctl -w /usr/bin/su -p x -k su_exec_monitoring
  • 然后查看:
root@kitploit:~
sudo ausearch -k su_exec_monitoring

11. 事件响应行动计划

如果怀疑已被利用:

  • 将机器与网络隔离;
  • 保留日志;
  • 重启以清除页缓存;
  • 验证系统完整性;
  • 检查本地账户;
  • 搜索最近添加的 SSH 密钥;
  • 检查 cron 和 systemd 任务;
  • 轮换密码和机密;
  • 应用已修补的内核;
  • 重启并验证活动版本;
  • 仅在检查通过后重新接入机器。

有用的命令:

root@kitploit:~
last -a
lastlog
getent passwd
sudo find /etc/cron* -type f -ls 2>/dev/null
sudo find /root /home -name authorized_keys -type f -ls 2>/dev/null
sudo journalctl --since "48 hours ago"

12. 修复检查清单

  • 盘点受影响的 Linux 机器。
  • 识别内核版本。
  • 检查供应商安全公告。
  • 优先处理多用户服务器、CI/CD、Kubernetes 和容器。
  • 应用供应商内核补丁。
  • 重启到已修补的内核。
  • 如果补丁尚不可用,则应用临时缓解措施。
  • 在容器化环境中阻止或限制 AF_ALG。
  • 监控对 setuid 二进制文件的访问。
  • 检查权限提升的痕迹。
  • 记录已执行的操作。

13. 防御性缓解脚本示例

root@kitploit:~
#!/usr/bin/env bash
set -euo pipefail

echo "[+] CVE-2026-31431 - algif_aead 临时缓解"

if [[ $EUID -ne 0 ]]; then
  echo "[-] 此脚本必须以 root 身份运行。"
  exit 1
fi

echo "[+] 活动内核版本:$(uname -r)"

echo "[+] 持久禁用 algif_aead 加载"
echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif-aead.conf

echo "[+] 尝试卸载模块"
modprobe -r algif_aead 2>/dev/null || true
rmmod algif_aead 2>/dev/null || true

if command -v update-initramfs >/dev/null 2>&1; then
  echo "[+] 更新 Debian/Ubuntu initramfs"
  update-initramfs -u
elif command -v dracut >/dev/null 2>&1; then
  echo "[+] 通过 dracut 更新 initramfs"
  dracut -f
elif command -v mkinitrd >/dev/null 2>&1; then
  echo "[+] 通过 mkinitrd 更新 initramfs"
  mkinitrd
else
  echo "[!] 未检测到已知的 initramfs 工具。请手动验证。"
fi

echo "[+] 验证"
lsmod | grep algif_aead && echo "[!] 模块仍已加载" || echo "[OK] 模块未加载"

echo "[+] 建议重启。"

14. 缓解措施的局限性

  • 通过禁用 algif_aead 模块进行缓解是临时变通方法。

它不能替代:

  • 安装已修补的内核;

  • 重启到已修补的内核;

  • 验证供应商状态;

  • 如果怀疑已被入侵,进行事后分析。

  • 它还可能影响某些明确配置为使用 AF_ALG 加密接口的软件。

15. 参考资料

Theori / Xint Code — Copy Fail 技术分析 https://xint.io/blog/copy-fail-linux-distributions Theori PoC GitHub 仓库 https://github.com/theori-io/copy-fail-CVE-2026-31431 NVD — CVE-2026-31431 https://nvd.nist.gov/vuln/detail/CVE-2026-31431 CERT-EU — 安全公告 2026-005 https://cert.europa.eu/publications/security-advisories/2026-005/ Ubuntu 安全 — CVE-2026-31431 https://ubuntu.com/security/CVE-2026-31431 Debian 安全跟踪器 — CVE-2026-31431 https://security-tracker.debian.org/tracker/CVE-2026-31431 SUSE CVE 跟踪器 — CVE-2026-31431 https://www.suse.com/security/cve/CVE-2026-31431.html Tenable 常见问题解答 — Copy Fail https://www.tenable.com/blog/copy-fail-cve-2026-31431-frequently-asked-questions-about-linux-kernel-privilege-escalation

16. 法律声明

本仓库仅用于以下目的:

  • 教学;
  • 防御;
  • 授权审计;
  • 修复;
  • 系统加固。

任何未经授权的攻击性使用都是非法的,且违背本仓库的宗旨。

下载工具
项目详情
CVECVE-2026-31431
公开名称Copy Fail
类型本地权限提升,LPE
组件Linux 内核加密子系统
受影响模块algif_aead
接口AF_ALG
涉及机制AEAD、authencesn、splice()、页缓存
CVSS v3.1 评分7.8 高危
所需权限非特权本地账户
用户交互无
影响机密性、完整性和可用性均受到严重影响
发行版公开测试的内核版本示例
Ubuntu 24.04 LTS6.17.0-1007-aws
Amazon Linux 20236.18.8-9.213.amzn2023
RHEL 10.16.12.0-124.45.1.el10_1
SUSE 166.12.0-160000.9-default
Debian取决于内核版本和安全状态
AlmaLinux / Rocky Linux / Oracle Linux取决于内核版本和供应商反向移植