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

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

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

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

工具目录

分类

查看所有分类
Loading categories
afalg-check — Linux 实用工具,用于检查 `AF_ALG`/`algif_aead` 的可用性,并帮助评估 `CVE-2026-31431` 的风险。 | Kitploit
工具/GitHubGitHub/itsystem/afalg-check
防御工具漏洞分析配置审计密码学威胁情报
GitHubitsystem/afalg-check

afalg-check

Linux 实用工具,用于检查 `AF_ALG`/`algif_aead` 的可用性,并帮助评估 `CVE-2026-31431` 的风险。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Itsumma AF_ALG Check

用于 Linux 的诊断实用程序,用于检查:

  • AF_ALG / algif_aead 的可用性,并帮助评估 CVE-2026-31431(copy-fail)的风险;
  • 针对 Dirty Frag 类漏洞(xfrm-ESP Page-Cache Write + RxRPC Page-Cache Write 链)的攻击面是否存在,按 esp4、esp6、rxrpc 组件进行检查,并打印缓解措施。

该工具用于防御性检查,并非漏洞利用程序。

功能

  • 对 AF_ALG AEAD 执行运行时探测 socket + bind;
  • 通过 /proc/modules、modules.builtin、modules.builtin.modinfo 分析内核组件;
  • 尝试通过 changelog(rpm/Debian changelog)判断是否存在 vendor backport 修复;
  • 显示持有 AF_ALG 套接字的进程(/proc/*/fd,尽力而为);
  • 针对不同发行版家族打印缓解建议。

针对 Dirty Frag 的附加功能:

  • 检查 esp4、esp6、rxrpc 是否存在(已加载 / 内建 / 未知);
  • 执行运行时探测 socket(AF_NETLINK, NETLINK_XFRM) 和 socket(AF_RXRPC),不改变系统配置;
  • 如果相关组件存在,打印紧急缓解措施(禁用模块加载 + 尝试卸载)。

要求

  • Linux;
  • Go 1.24+;
  • 为完整扫描 /proc/*/fd,建议以 root 身份运行。

构建

入口点位于项目根目录,从根目录执行构建:

root@kitploit:~
go build -o itsumma-afalg-check .

运行

root@kitploit:~
./itsumma-afalg-check

工具输出内容

启动时:

Itsumma Security Check — AF_ALG / CVE-2026-31431

随后:

  • AF_ALG(socket + bind)运行时探测结果;
  • 内核版本及 modules.builtin 的可用性;
  • af_alg 和 algif_aead 的状态(已加载 / 内建 / 未知);
  • 针对 CVE-2026-31431 的最终评估(包括尝试判断 vendor backport);
  • 当前持有 AF_ALG 套接字的进程列表(如果找到);
  • 分步缓解命令及重启后的复查步骤。

缓解后的基本复查

root@kitploit:~
cat /proc/cmdline
echo 3 | sudo tee /proc/sys/vm/drop_caches
modprobe -n -v algif_aead
lsmod | grep '^algif_aead\b' || echo 'algif_aead not loaded'
./itsumma-afalg-check

对于内建(built-in)场景,除 modprobe/lsmod 外,建议额外检查:

root@kitploit:~
dmesg | grep -i 'algif_aead\|initcall_blacklist'

Dirty Frag:基本缓解命令

来自公开 Dirty Frag runbook 的命令(禁用 esp4、esp6、rxrpc 的加载,并尝试卸载已加载的模块)。

如果正在使用 IPSec / XFRM(例如通过 strongSwan),建议在卸载模块前执行 flush:

root@kitploit:~
sudo ip xfrm state flush
sudo ip xfrm policy flush
echo 3 | sudo tee /proc/sys/vm/drop_caches

如果 esp4/esp6/rxrpc 编译为内建(仅出现在 modules.builtin 中),modprobe blacklist 和 rmmod 无法将其禁用:此时需要更新/重新编译内核。

对于 strongSwan,安装 libcharon-extra-plugins 后启用 kernel-libipsec:

root@kitploit:~
sudo sed -i 's/^\s*load\s*=\s*no/load = yes/' /etc/strongswan.d/charon/kernel-libipsec.conf
sudo systemctl restart strongswan || sudo systemctl restart strongswan-starter
root@kitploit:~
lsmod | egrep '^(esp4|esp6|rxrpc)\b' || echo 'esp4/esp6/rxrpc not loaded'
sudo modprobe esp4 esp6 rxrpc || true
sudo modprobe -r esp6 rxrpc
sudo modprobe -r esp4 || true
sudo rmmod -f esp4
sudo sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' > /etc/modprobe.d/dirtyfrag.conf; rmmod esp6 rxrpc 2>/dev/null; rmmod -f esp4 2>/dev/null; true"

复查:

root@kitploit:~
modprobe -n -v esp4 esp6 rxrpc
lsmod | egrep '^(esp4|esp6|rxrpc)\b' || echo 'esp4/esp6/rxrpc not loaded'
./itsumma-afalg-check

重要说明

  • 该工具仅具诊断性质,不能替代厂商提供的内核更新。
  • algif_aead 的存在意味着存在攻击面,但最终结论取决于内核版本及发行版的 backport 补丁。
  • 如果 AF_ALG AEAD 运行时探测未通过,则在本检查范围内该向量被视为不可用。
下载工具