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

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

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

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

工具目录

分类

查看所有分类
Loading categories
cve-2026-31431-mitigation — 针对 Linux 内核上 CVE-2026-31431(复制失败)的检测与缓解工具。包含 Phalanx-CCS 和 Silent4Labs 脚本及一个 Ansible playbook,用于在服务器间应用临时缓解措施(阻断 algif_aead 模块或设置启动参数)。 | Kitploit
工具/GitHubGitHub/yakovyakov/cve-2026-31431-mitigation
漏洞扫描器漏洞分析脚本与自动化配置审计云安全DevSecOps
GitHubyakovyakov/cve-2026-31431-mitigation

cve-2026-31431-mitigation

针对 Linux 内核上 CVE-2026-31431(复制失败)的检测与缓解工具。包含 Phalanx-CCS 和 Silent4Labs 脚本及一个 Ansible playbook,用于在服务器间应用临时缓解措施(阻断 algif_aead 模块或设置启动参数)。

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

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

CVE-2026-31431 (Copy Fail) – 技术缓解工具集

1. 概述

本工具包为运行受影响内核(版本 4.14 至 6.12.84、6.13 至 6.18.21 等)的 Linux 系统提供自动化解决方案,用于 检测并缓解 CVE-2026-31431 漏洞(又名 Copy Fail)。

该工具集包含:

  • 一个 统一的 Bash 脚本(mitigate_copyfail.sh),它能够:
    • 运行 Phalanx-CCS(攻击面活跃性检测)和 Silent4Labs(风险评估)。
    • 检测内核配置(CONFIG_CRYPTO_USER_API_AEAD=m|y)。
    • 应用相应的缓解措施:
      • 可加载模块(=m):创建 /etc/modprobe.d/disable-algif-aead.conf,内容为 install algif_aead /bin/false,并卸载模块(rmmod)。
      • 内置模块(=y):添加内核启动参数 initcall_blacklist=algif_aead_init(需要重启)。
  • 验证最终状态并提取 Silent4Labs 评分和风险等级。
  • 一个 Ansible 剧本(mitigation.yml),它能够:
    • 将脚本复制到远程服务器。
    • 执行缓解脚本并捕获其输出。
    • 去除 ANSI 颜色代码。
    • 解析最终的 Phalanx 状态和 Silent4Labs 值。
    • 显示人类可读的摘要,并在控制机上保存详细日志。
  • 重要提示: 此缓解措施为临时性。永久修复方案是将内核升级至包含补丁 a664bf3d603d 的版本(≥6.18.22、≥6.19.12 或 ≥7.0)。


    2. 前提条件

    2.1. 控制机(运行 Ansible 的机器)

    • Ansible 2.9 或更高版本
    • Python 3.6 或更高版本
    • 对目标服务器的 SSH 访问权限(使用 become: yes)

    2.2. 远程服务器

    • Bash 4+
    • Python 3(用于 Phalanx-CCS)
    • sudo 权限(用于应用缓解措施)
    • 受影响的内核(可选;若内核已包含补丁,脚本不会执行更改)

    检测脚本(Phalanx-CCS 和 Silent4Labs)是安全的,不会利用漏洞;它们仅用于验证攻击面。


    3. 仓库结构

    root@kitploit:~
    cve-2026-31431-mitigation/
    ├── README.md
    ├── scripts/
    │   ├── mitigate_copyfail.sh      # Unified script (detection + mitigation)
    │   ├── check_copyfail.py         # Phalanx-CCS (reachability checker)
    │   └── check-copyfail.sh         # Silent4Labs (risk assessment)
    ├── ansible/
    │   ├── ansible.cfg               # (optional) Ansible configuration
    │   ├── inventory.ini             # Server inventory
    │   └── mitigation.yml            # Main playbook
    └── resultados_cve/               # Auto‑generated folder for logs
    

    4. 安装与配置

    4.1. 克隆仓库

    root@kitploit:~
    git clone https://github.com/your-username/cve-2026-31431-mitigation.git
    cd cve-2026-31431-mitigation/ansible
    

    4.2. 准备清单文件(inventory.ini)

    远程服务器示例:

    root@kitploit:~
    [servers]
    server1 ansible_host=192.168.1.10 ansible_user=root
    
    [localhost]
    localhost ansible_connection=local
    
    [all:vars]
    ansible_become=yes
    # ansible_become_password=my_password  # if using password for sudo
    

    4.3. 检查脚本路径

    在 mitigation.yml 中,任务 Copy scripts to remote 使用了 src: "../scripts/{{ item }}"。请确保相对路径正确,或者根据您的目录结构进行修改。


    5. 执行

    在 ansible/ 目录下运行:

    root@kitploit:~
    ansible-playbook -i inventory.ini mitigation.yml -k -K
    
    • -k 询问 SSH 密码。
    • -K 询问 become(sudo)密码。

    当使用 localhost 且设置 ansible_connection=local 时,无需 SSH。

    5.1. 预期输出

    剧本会显示类似以下的纯文本摘要:

    root@kitploit:~
    ==========================================
    MITIGATION RESULTS
    ==========================================
    Host: server1
    ------------------------------------------
      - Status: SYSTEM SECURE
      - Code: (not applicable)
    ------------------------------------------
      - Final score: 40 / 100
      - Risk level: MEDIUM
    ==========================================
    

    此外,日志文件会保存在 resultados_cve/<hostname>_mitigation.log 中,包含完整的脚本输出(日期、内核版本、检测信息等)。


    6. 调试模式

    若提取的值显示 ? 或 Not detected,请启用 mitigation.yml 中的调试任务:

    • 将三个 DEBUG 任务中的 when: false 改为 when: true(或设置 when: true 以查看 clean_stdout 和正则表达式输出)。
    • 重新运行剧本并观察输出,根据需要调整搜索模式。

    7. 自定义

    7.1. 更改日志目录

    编辑任务 Create local results directory 和 Save full output to local file:

    root@kitploit:~
    path: /absolute/path/resultados_cve
    dest: "/absolute/path/resultados_cve/{{ inventory_hostname }}_mitigation.log"
    

    7.2. 禁用脚本复制(如果脚本已存在)

    注释掉复制任务,并在 Run mitigation script 任务中调整路径,指向现有位置。

    7.3. 自动清理远程脚本

    将最后一个任务(Clean up remote scripts)中的 when: false 改为 when: true。


    8. 限制与警告

    • 通过启动参数(initcall_blacklist)进行的缓解需要重启才能生效。剧本不会自动重启,需要计划维护窗口。
    • 在 CONFIG_CRYPTO_USER_API_AEAD=y(内核内置)的系统上,无法通过 rmmod 卸载模块;唯一的方法是使用启动参数。
    • Silent4Labs 评分仅具参考意义;中等值(例如 40/100)并不意味着系统在缓解措施生效时可被利用。
    • 检测脚本可能需要权限才能读取 /proc/crypto 和 /boot/config-*;它们通过 become: yes 运行。

    9. 参考

    • CVE-2026-31431 on NVD
    • Technical analysis and affected versions
    • Phalanx-CCS (detection tool)
    • Silent4Labs (risk assessment)

    10. 许可证

    本项目采用 MIT 许可证发布。第三方脚本(Phalanx-CCS、Silent4Labs)保留其各自的许可证。

    License: MIT


    支持项目

    如果您觉得此工具实用,请在 GitHub 上为我们点星!

    GitHub stars


    下载工具