## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-SEBINXAVI-CVE-CHECKER-2026
# CVE 检查器 2026
多操作系统漏洞扫描器,用于检测:
* **CVE-2026-31431** — Linux 内核 `crypto/algif_aead` 缺陷
* **CVE-2026-41940** — cPanel 与 WHM 认证绕过(CVSS 9.8)
## 支持的操作系统
家族| 发行版
---|---
Debian| Ubuntu、Debian、Linux Mint、Pop!_OS
RHEL| RHEL、CentOS、AlmaLinux、Rocky Linux、Oracle Linux、CloudLinux、Fedora、Amazon Linux
SUSE| SLES、openSUSE
## 快速开始(一行命令)
直接从 GitHub 运行:
root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/sebinxavi/cve-checker-2026/main/cve_check_2026.sh | sudo bash
或先下载再执行(建议先审查):
root@kitploit:~
curl -fsSL -o cve_check_2026.sh https://raw.githubusercontent.com/sebinxavi/cve-checker-2026/main/cve_check_2026.sh
chmod +x cve_check_2026.sh
sudo ./cve_check_2026.sh
## 检查内容
### CVE-2026-31431(Linux 内核)
* 内核版本与构建配置
* `algif_aead` / `af_alg` 模块加载状态
* 模块黑名单状态
* 通过 `apt`、`dnf`、`yum`、`zypper` 可用的补丁
* KernelCare 实时补丁状态(如适用)
### CVE-2026-41940(cPanel)
* cPanel 与 WHM 版本检测
* 与已修补版本对比
* `cpsrvd` 服务状态
* 暴露的端口(2082、2083、2086、2087、2095、2096)
* 最近的会话文件活动(入侵指标)
* cPanel RPM 完整性检查
## 输出
文件| 用途
---|---
`/var/log/cve_check_2026_<timestamp>.log`| 完整调试日志
`/var/log/cve_check_2026_<timestamp>.report.txt`| 执行摘要
如果 `/var/log` 不可写,则回退到 `/tmp/`。
## 退出代码
代码| 含义
---|---
`0`| 全部安全或不适用
`1`| 脚本错误(非 root、缺少工具)
`2`| 至少一个 CVE 确认存在漏洞
适用于自动化与监控集成。
## 状态图例
## CVE-2026-41940 — 会话访问检查器
对于 cPanel 服务器,提供了一个配套脚本,用于审计活动会话文件,以检测 CVE-2026-41940 的利用迹象。
### 功能说明
扫描 `/var/cpanel/sessions/raw/` 中的所有文件,并将每个会话归类为以下三组之一:
### 运行方式
root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/sebinxavi/cve-checker-2026/main/cpanel_session_checker.sh | sudo bash
或先下载:
root@kitploit:~
curl -fsSL -o cpanel_session_checker.sh https://raw.githubusercontent.com/sebinxavi/cve-checker-2026/main/cpanel_session_checker.sh
chmod +x cpanel_session_checker.sh
sudo ./cpanel_session_checker.sh
### 根据结果采取的措施
**如果发现 COMPROMISED 会话:**
1. 立即隔离服务器
2. 在任何清理之前对磁盘进行快照以用于取证
3. 轮换所有密码和 SSH 密钥
4. 检查 `/tmp`、`cron` 和 `~/.ssh/authorized_keys` 是否存在恶意软件
5. 通知托管客户
被入侵的服务器不可信 — 将所有 cPanel 账户迁移到新配置的干净服务器:
root@kitploit:~
# 在被入侵的服务器上 — 列出所有账户
/usr/local/cpanel/bin/whmapi1 listaccts | grep 'user:'
# 打包每个账户以进行迁移
/scripts/pkgacct <username> /backup
root@kitploit:~
# 在干净服务器上 — 恢复每个账户
/scripts/restorepkg /backup/cpmove-<username>.tar.gz
或者使用 **WHM >> 传输工具 >> 从另一台服务器复制多个账户** 进行完整保真的批量迁移。
迁移后:更新 DNS 将域名指向新服务器 IP,验证所有站点正常加载,然后停用或重新镜像被入侵的服务器。
**如果仅发现 SUSPICIOUS 会话(全部被阻止):**
1. 确认 cPanel 已修补:`/scripts/upcp --force`
2. 清除所有会话:`rm -f /var/cpanel/sessions/raw/*`
## CVE-2026-41940 — cPanel 批量密码重置
攻击发生后(即使已被阻止),建议轮换所有 cPanel 账户密码作为预防措施。提供了一个专用脚本,用于批量重置所有 cPanel 账户密码并将其保存到安全的 CSV 文件中。
### 功能说明
* 通过 `whmapi1` 获取所有 cPanel 账户
* 为每个账户生成加密随机的 24 字符密码
* 通过 WHM API 重置密码(跳过 MySQL 密码)
* 将所有新凭据保存到 `/root/cpanel_new_passwords_<timestamp>.csv`(权限 600)
* 将所有活动记录到 `/root/cpanel_passwd_reset_<timestamp>.log`
### 运行方式
root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/sebinxavi/cve-checker-2026/main/cpanel_mass_passwd_reset.sh | sudo bash
> 在安全地将新密码交付给账户持有人后,删除 CSV 文件:
>
> root@kitploit:~
>
>
> shred -u /root/cpanel_new_passwords_*.csv
>
* * *
## 修复指南
### CVE-2026-41940 — cPanel 与 WHM
将 cPanel 更新到您分支的已修补版本:
分支
---
root@kitploit:~
/scripts/upcp --force
/scripts/restartsrv_cpsrvd
### CVE-2026-31431 — Linux 内核
#### 标准服务器(非 cPanel)
**Debian / Ubuntu:**
root@kitploit:~
apt update && apt upgrade -y && reboot
**RHEL / AlmaLinux / CloudLinux:**
root@kitploit:~
dnf update kernel -y && reboot
# 或
yum update kernel -y && reboot
**使用 KernelCare(无需重启):**
root@kitploit:~
kcarectl --update
#### cPanel 服务器(Ubuntu)
> **警告:** 不要在 cPanel 服务器上运行 `apt upgrade -y` — 它可能会升级由 cPanel 管理的软件包(Apache、PHP、MySQL)并导致服务中断。
仅升级内核软件包:
root@kitploit:~
apt-get install --only-upgrade linux-image-generic linux-headers-generic linux-generic
reboot
重启后验证:
root@kitploit:~
uname -r
#### AWS EC2 上的 cPanel 服务器(Ubuntu)
AWS EC2 实例使用不同的内核软件包(`linux-aws`)— 通用软件包名称不会更新正在运行的内核:
root@kitploit:~
apt update && apt install --only-upgrade -y \
linux-aws \
linux-image-aws \
linux-headers-aws && \
echo "" && \
echo "当前运行的内核 : $(uname -r)" && \
echo "下次启动的内核 : $(ls /boot/vmlinuz-* | sort -V | tail -1 | sed 's|/boot/vmlinuz-||')"
确认显示的下次启动内核无误后,重启:
root@kitploit:~
reboot
#### 临时缓解措施(如果无法立即重启)
将易受攻击的模块加入黑名单以防止其加载:
root@kitploit:~
echo "blacklist algif_aead" >> /etc/modprobe.d/disable-algif-aead.conf
echo "blacklist af_alg" >> /etc/modprobe.d/disable-algif-aead.conf
update-initramfs -u # Debian/Ubuntu
# 或
dracut --force # RHEL 系列
重新运行检查器以确认状态变为 `MITIGATED`。在下一个维护窗口应用内核补丁。
* * *
## 自动化示例
### Cron — 每周检查并发送邮件警报
root@kitploit:~
sudo tee /etc/cron.weekly/cve-check-2026 > /dev/null <<'EOF'
#!/bin/bash
curl -fsSL https://raw.githubusercontent.com/sebinxavi/cve-checker-2026/main/cve_check_2026.sh | bash
if [[ $? -eq 2 ]]; then
REPORT=$(ls -t /var/log/cve_check_2026_*.report.txt | head -1)
mail -s "[CVE ALERT] $(hostname) vulnerable" some-email@example.com < "${REPORT}"
fi
EOF
sudo chmod +x /etc/cron.weekly/cve-check-2026
### SSH — 跨多台服务器扇出执行
root@kitploit:~
for host in server1 server2 server3; do
ssh root@${host} "curl -fsSL https://raw.githubusercontent.com/sebinxavi/cve-checker-2026/main/cve_check_2026.sh | bash" \
> "report_${host}_$(date +%F).txt" &
done
wait
## 安全声明
此脚本为**只读** — 仅检查系统并写入日志文件。它**不会** :
* 修改任何系统配置
* 安装或移除软件包
* 重启服务
* 重置密码或凭据
在将 `curl` 管道传输到 `bash` 之前,请始终审查脚本。查看源代码: https://github.com/sebinxavi/cve-checker-2026/blob/main/cve_check_2026.sh
## 参考
* CVE-2026-31431(NVD)
* CVE-2026-41940(NVD)
* cPanel 安全公告
## 许可证
MIT — 参见 LICENSE
## 作者
Sebin Xavi — sebintech.com