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

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

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

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

工具目录

分类

查看所有分类
Loading categories
cve-2026-31431 — Bash scripts to detect and mitigate CVE-2026-31431 (Copy Fail) Linux kernel local privilege escalation via AF_ALG socket, including module disabling and seccomp configuration. | Kitploit
工具/GitHubGitHub/leelong2020/cve-2026-31431
Defensive ToolsVulnerability AnalysisScripting & AutomationConfiguration Auditing
GitHubleelong2020/cve-2026-31431

cve-2026-31431

Bash scripts to detect and mitigate CVE-2026-31431 (Copy Fail) Linux kernel local privilege escalation via AF_ALG socket, including module disabling and seccomp configuration.

查看仓库
3个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-31431 (Copy Fail) 检测与缓解工具

License: MIT

本项目提供一组 Bash 脚本,用于检测和缓解 CVE-2026-31431(又称 "Copy Fail")Linux 内核本地权限提升漏洞。

漏洞简介

  • CVE 编号: CVE-2026-31431
  • 漏洞类型: 本地权限提升(Local Privilege Escalation)
  • 影响组件: Linux Kernel - AF_ALG socket / AEAD 加密接口
  • 修复提交: a664bf3d603d 及之后补丁
  • 公开名称: Copy Fail

该漏洞存在于 Linux 内核的 AF_ALG socket 实现中,攻击者可能通过构造特定的 authencesn 绑定操作实现本地提权。

项目文件

文件用途运行权限
check_cve_2026_31431.sh漏洞影响检测与风险评估普通用户或 root
cve-2026-31431-mitigate.sh执行缓解措施(禁用模块、生成 seccomp 配置)需要 root

快速开始

1. 检测系统是否受影响

root@kitploit:~
bash check_cve_2026_31431.sh

脚本会逐项检查以下内容:

  • 内核配置 CONFIG_CRYPTO_USER_API_AEAD 状态
  • algif_aead / af_alg 模块加载状态
  • AF_ALG socket 创建能力
  • 现有缓解配置是否存在
  • authencesn bind 验证(判断是否已缓解)
  • 发行版是否位于已知受影响列表

最终输出综合风险等级:UNKNOWN / LOW / MEDIUM / HIGH。

2. 执行缓解措施

注意:缓解脚本需要 root 权限运行。

root@kitploit:~
sudo bash cve-2026-31431-mitigate.sh

缓解操作包括:

  • 写入 /etc/modprobe.d/disable-algif-aead.conf,禁止加载 algif_aead 模块
  • 如果 algif_aead 已加载,尝试卸载(rmmod)
  • 执行 depmod -a 更新模块依赖
  • 缓解前后自动验证 AF_ALG socket 创建和 bind 能力

可选参数

root@kitploit:~
sudo bash cve-2026-31431-mitigate.sh --verify-only          # 仅验证,不写入配置
sudo bash cve-2026-31431-mitigate.sh --write-seccomp        # 额外生成 Docker seccomp 配置
sudo bash cve-2026-31431-mitigate.sh --seccomp-path /path   # 指定 seccomp 输出路径

缓解效果验证

判断缓解是否生效的金标准:authencesn bind 失败。

检测脚本中的"检查项5:缓解验证(bind authencesn)"会尝试执行:

root@kitploit:~
import socket
s = socket.socket(38, 5, 0)  # AF_ALG
s.bind(("aead", "authencesn(hmac(sha256),cbc(aes))"))
  • 若返回错误(bind 失败)→ 已缓解或能力已被阻断
  • 若返回成功 → 未缓解,需要进一步处置

已知限制

  1. 静态编译场景无效:若内核配置 CONFIG_CRYPTO_USER_API_AEAD=y(静态编译进内核),模块禁用方式通常无法生效,只能升级内核。
  2. 模块占用:如果 algif_aead 正被占用,rmmod 可能卸载失败,建议在维护窗口重启后验证。
  3. 容器环境:建议叠加 seccomp 配置,阻止 socket(AF_ALG) 调用。

后续建议

  1. 根本修复:升级到包含修复提交 a664bf3d603d 及之后补丁的官方内核版本。
  2. 跟踪公告:
    • Ubuntu: https://ubuntu.com/security/CVE-2026-31431
    • RHEL: https://access.redhat.com/security/cve/CVE-2026-31431
    • SUSE: 参考发行版安全公告
  3. 复测确认:升级或缓解后,重新运行检测脚本,确认 bind 验证失败。

兼容性

脚本已在以下环境测试通过:

  • Bash 4.x / 5.x
  • 依赖:标准 GNU 工具(grep, sed, lsmod, modprobe, rmmod, depmod)
  • 可选依赖:python3 或 python(用于 AF_ALG socket 验证)

许可证

MIT License

免责声明

本项目提供的脚本仅用于安全检测和临时缓解,不能替代官方内核补丁升级。使用本脚本前请充分理解其操作(如禁用内核模块),并在测试环境先行验证。作者不对因使用本工具造成的任何直接或间接损失负责。

下载工具