thrandomv/cve-2026-31431-detection

GitHub: thrandomv/cve-2026-31431-detection

针对 Linux 内核 CVE-2026-31431 本地提权漏洞的生产级多平台检测规则集合,覆盖完整攻击链并附带 SOC 分诊手册,不含任何攻击性代码。

Stars: 0 | Forks: 0

# CVE-2026-31431 "Copy Fail" — 防御性检测包 针对 CVE-2026-31431 的生产就绪型检测规则和分诊指导集合,该漏洞是由 Theori (Xint Code Research) 披露的 Linux 内核 `algif_aead` 加密接口中的本地提权漏洞。该漏洞利用了原位 AEAD 优化,允许非特权用户对任何可读文件的页缓存执行可控写入。本仓库提供了 Sigma 规则(包括一条行为链规则)、auditd 配置、用于容器的 Falco 规则、KQL 和 Elastic EQL 狩猎查询,以及一份逐步的分析师分诊手册。本仓库不包含任何漏洞利用代码 — 纯粹是供 SOC 分析师和检测工程师使用的防御性内容。 包含专为 auditd、eBPF 和 EDR 遥测管道设计的检测逻辑。 ## 漏洞概述 | 字段 | 详情 | |---|---| | CVE | CVE-2026-31431 | | 别名 | Copy Fail | | 组件 | Linux 内核 `algif_aead` (AF_ALG 加密接口) | | 类型 | 本地提权 (LPE) | | CVSS | 7.8 | | 原语 | 对任何可读文件的页缓存执行确定性的 4 字节可控写入 | | 提权路径 | 污染 `/etc/passwd` 页缓存 → `getpwnam()` 返回 UID 0 → `su` 获取 root 权限 | | 容器风险 | 如果宿主机内核未打补丁且 AF_ALG 未被 seccomp 阻止,这将成为一个容器逃逸原语 (T1611) | | 补丁 | 将 `algif_aead` 恢复为非原位 AEAD 操作(上游) | ## 检测覆盖矩阵 | 阶段 | 可观察行为 | 检测 | |---|---|---| | 初始 | 非root用户的 AF_ALG 套接字 (family 38) | Sigma 规则 1 · auditd `afalg_socket` · Falco | | 设置 | 使用 authencesn AEAD 字符串的 bind() | Sigma 规则 2 (关键字) · auditd `afalg_bind` | | 漏洞触发 | 对 AF_ALG 文件描述符的 splice() | auditd `splice_syscall` · Falco/eBPF | | 后置条件 | 来自非特权进程的 EBADMSG recv() | 系统调用链关联 · auditd | | 影响 | /etc/passwd FIM 告警及访问激增 | 文件完整性监控 · /proc/\/fd | | 权限切换 | AF_ALG 活动之后的 su 执行 | Sigma 规则 3 · auditd execve · PAM 日志 | ## MITRE ATT&CK 映射 - **T1068** — 利用漏洞进行提权 (Exploitation for Privilege Escalation) - **T1611** — 逃逸到宿主机 (Escape to Host,容器场景) ## 补丁指导 应用上游修复,将 `algif_aead` 恢复为非原位 AEAD 操作。 发行版公告: - RHEL: https://access.redhat.com/security/cve/CVE-2026-31431 - Ubuntu: https://ubuntu.com/security/CVE-2026-31431 - Debian: https://security-tracker.debian.org/tracker/CVE-2026-31431 - SUSE: https://www.suse.com/security/cve/CVE-2026-31431 **临时缓解措施(针对未打补丁的系统):** 将 `install algif_aead /bin/false` 写入 `/etc/modprobe.d/disable-algif-aead.conf`, 或者应用阻止 `AF_ALG` (family 38) `socket` 调用的 seccomp 配置文件。 ## 误报说明 AF_ALG 套接字的主要合法使用者是 `cryptsetup` (LUKS)、`fscrypt` 以及一些支持内核加密的 VPN 客户端。在生产环境中,这些进程几乎完全以 root 身份运行,因此 `uid != 0` 过滤器可以消除绝大多数良性活动。特定的 AEAD 字符串 `authencesn(hmac(sha256),cbc(aes))` 没有已知的合法生产用途,一旦观察到即可视为严重威胁。 ## 免责声明 本仓库仅包含防御性检测内容。不包含也不会添加任何漏洞利用代码、概念验证脚本、系统调用偏移量或 shellcode。
标签:AF_ALG, algif_aead, auditd配置, Cloudflare, Copy Fail, CVE-2026-31431, Docker镜像, EDR, EQL查询, Falco规则, KQL查询, Linux内核安全, LPE, MITRE ATT&CK, PB级数据处理, Sigma规则, SOC分析, Web报告查看器, x64dbg, 安全运维, 容器逃逸, 本地提权, 漏洞靶场, 目标导入, 红队防御, 网络安全, 脆弱性评估, 蓝军, 防御检测, 隐私保护