selectel/mks-copy-fail-mitigation
GitHub: selectel/mks-copy-fail-mitigation
以 DaemonSet 形式自动检测并禁用 Linux 内核 algif_aead 模块,临时缓解 CVE-2026-31431 本地提权漏洞。
Stars: 0 | Forks: 0
# CVE-2026-31431 缓解 DaemonSet
用于修复 MKS 集群中所有 worker 节点上 CVE-2026-31431 漏洞的 DaemonSet。
## 漏洞描述
**CVE ID:** CVE-2026-31431
**CVE 链接:** https://nvd.nist.gov/vuln/detail/CVE-2026-31431
**根据 CVSS v.3.1 评估的攻击向量和危险等级:**
分数:**7.8 HIGH**
向量:`CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H`
**简要描述:**
Copy Fail (CVE-2026-31431) 是 Linux 内核加密 API 子系统中的一个逻辑漏洞,允许普通系统用户获取超级用户 (root) 权限。该 PoC(概念验证)适用于自 2017 年发布到补丁发布之前的所有主要 Linux 发行版。
**特点:**
- 可被用作从容器逃逸到宿主机的原语,因为使用了整个宿主机共享的 page cache
- 不需要远程访问——只有在具有本地非特权账户的情况下才能被利用
- 利用了默认在几乎所有流行发行版配置中启用的内核加密 API (AF_ALG)
## 此 DaemonSet 的作用
DaemonSet 会在集群的每个 worker 节点上运行一个容器:
1. 测试 AF_ALG AEAD 接口的可用性
2. 创建配置文件 `/etc/modprobe.d/disable-algif.conf`
3. 如果已加载该模块,则执行 `rmmod algif_aead`
4. 通过重复执行步骤 1 的检查,验证漏洞已被消除
## 使用方法
### 1. 下载 DaemonSet
```
wget https://raw.githubusercontent.com/selectel/mks-copy-fail-mitigation/refs/heads/main/copy-fail-mitigation-daemonset.yaml
```
或者克隆仓库:
```
git clone https://github.com/selectel/mks-copy-fail-mitigation.git
cd mks-copy-fail-mitigation
```
### 2. 应用 DaemonSet
```
kubectl apply -f copy-fail-mitigation-daemonset.yaml
```
### 3. 检查执行状态
```
# 检查 DaemonSet 状态
kubectl get daemonset -n kube-system cve-2026-31431-mitigation
# 获取 Pod 列表
kubectl -n kube-system get pods -l app=cve-2026-31431-mitigation -o wide
```
### 4. 查看执行日志
```
# initContainer 日志
kubectl -n kube-system logs -l app=cve-2026-31431-mitigation -c mitigation
```
### 5. 删除 DaemonSet
```
kubectl delete -f copy-fail-mitigation-daemonset.yaml
```
标签:0day挖掘, AF_ALG, Copy Fail, Crypto API, CVE-2026-31431, CVSS 7.8, DaemonSet, Linux内核, Linux漏洞, MKS, Pandas, Web报告查看器, 信息安全和风险管理, 内核安全, 子域名枚举, 子域名突变, 安全渗透, 容器逃逸, 应用安全, 本地提权, 模块禁用, 漏洞缓解, 端点安全, 系统安全, 网络安全, 补丁管理, 隐私保护, 零日漏洞