Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2024-51482-ZoneMinder-v1.37.-1.37.64-SQL-Injection-POC — ZoneMinder Time-Based SQL Injection (CVE-2024-51482) Exploit POC | Kitploit
ツール/GitHubGitHub/ravi-lk/cve-2024-51482-zoneminder-v1.37.-1.37.64-sql-injection-poc
Password CrackingVulnerability AnalysisExploitationWeb Application ExploitationCTFPenetration TestingLearning & Education
GitHubravi-lk/cve-2024-51482-zoneminder-v1.37.-1.37.64-sql-injection-poc

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2024-51482-ZoneMinder-v1.37.-1.37.64-SQL-Injection-POC

ZoneMinder Time-Based SQL Injection (CVE-2024-51482) Exploit POC

リポジトリを見る
5ヶ月前未レビュー

ZoneMinder 時間ベースSQLインジェクション(CVE-2024-51482)

📌 脆弱性の概要

  • CVE ID: CVE-2024-51482
  • アドバイザリ: GHSA-qm8h-3xvf-m7j3
  • 影響を受けるバージョン: ZoneMinder 1.37.* ~ 1.37.64(1.37.64を含む)
  • パッチ適用バージョン: 1.37.65

📖 説明

このリポジトリには、ZoneMinder 1.37.* ~ 1.37.64 で見つかったブラインドSQLインジェクションの脆弱性に対する、高性能かつ並列化された概念実証(PoC)エクスプロイト(Exploit.py)が含まれています。

脆弱性の根本原因と影響

GHSA-qm8h-3xvf-m7j3 によると、この脆弱性は web/ajax/event.php が removetag アクションを処理する際に発生します。tid(TagId)パラメータはリクエストから読み取られ、安全でない方法でSQL文に直接連結されます:

root@kitploit:~
$tagId = $_REQUEST['tid']; 
// ...
$sql = "SELECT * FROM Events_Tags WHERE TagId = $tagId";
$rowCount = dbNumRows($sql);

$tagId は dbNumRows() に渡される前にパラメータ化されていないため、認証済みの攻撃者はブールベースまたは時間ベースのSQLインジェクション手法(ここで紹介するPoCは SLEEP() を利用)を使用して、任意のSQLコマンドを注入できます。

これによりSQLデータベースを完全に制御できるようになり、データの機密性と完全性の喪失、さらには永続的なスリープコマンドによるサービス拒否(DoS)を引き起こす可能性があります。

緩和策

バージョン1.37.65以降、SQLクエリは適切にパラメータ化されています。脆弱なブロックは、安全なクエリを構築するようにパッチが適用されました:

root@kitploit:~
$sql = "SELECT * FROM Events_Tags WHERE TagId = ?"; 
$rowCount = dbNumRows($sql, $tagId);

エクスプロイトスクリプト

v2.0 FAST EXPLOIT スクリプトは、マルチスレッド、最適化された文字頻度検索、動的閾値キャリブレーションを使用してデータ抽出を最大5倍高速化し、zm.Users データベーステーブルからユーザー認証情報(Username:Password)を積極的に抽出します。

🚀 エクスプロイトの詳細(Exploit.py v2.0 FAST EXPLOIT)

特徴

  • 並列抽出: ThreadPoolExecutor(デフォルト5ワーカー)を利用して複数の文字を同時に抽出し、従来の順次ブラインドSQLiと比較して全体的な抽出時間を大幅に短縮します。
  • 頻度最適化検索: バイナリ検索にフォールバックする前に、統計的に最も一般的なパスワード文字と英字を最初にチェックし、文字あたりの平均リクエスト数を最小限に抑えます。
  • 指数関数的長さ検出: 並列抽出を開始する前に、高速な指数ステップ探索とそれに続くバイナリ検索を使用して、対象文字列の正確な長さを特定します。
  • 動的閾値キャリブレーション: 起動時にベースライン応答時間(閾値)を自動調整し、ネットワーク遅延と正当なSQL実行遅延を正確に区別します。
  • 選択的ダンプ: 特定のユーザー名の認証情報を抽出するか、zm.Users テーブル全体を順次ダンプすることをサポートします。

脆弱なエンドポイントとパラメータ

  • URL: デフォルト http://<target>/zm/index.php
  • パラメータ: view=request&request=event&action=removetag
  • 脆弱なパラメータ: tid

🛠️ 使用方法の分析

root@kitploit:~
python3 Exploit.py

実行すると、スクリプトは対話モードで動作し、以下の入力を求めます:

  1. ターゲットURL: ZoneMinder の index.php ファイルへのパス(例:http://zoneminder.local/zm/index.php)。
  2. ZMSESSID Cookie値: このエクスプロイトには認証が必要です。有効なセッションを表す ZMSESSID Cookie を指定してください。
  3. ターゲットユーザー名(オプション): 認証情報を抽出する特定のユーザーを入力するか、空白のままにして zm.Users テーブル全体を自動検出してダンプします。

extracted_data.txt というファイルが自動的に作成され、ダンプされた認証情報(Username:Password 形式)が保存されます。また、スクリプトは経過時間の合計と送信されたHTTPリクエストの総数を含む実行統計をリアルタイムで表示します。

🔗 参考リンク

  • GitHub Security Advisory GHSA-qm8h-3xvf-m7j3
  • NVDエントリ – CVE-2024-51482
  • ZoneMinder 公式サイト

免責事項: このエクスプロイトスクリプトは、教育目的および許可されたペネトレーションテスト専用です。所有していない、または明示的なテスト許可を得ていないシステムに対してこのツールを使用しないでください。

ツールをダウンロード