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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-57821-PoC-Exploit — 🔐 CVE-2026-57821 - Apache Fineract SQLインジェクションツールキット 📚 認可されたセキュリティテスト用の2つのPythonスクリプト: verifier.py (安全な検出、抽出なし) と exploit.py (深層分析)。11種類のDBタイプに対応。SQLインジェクションの脆弱性を理解するのに最適。合法的なテストのみ ⚠️ 教育・研究目的専用。 | Kitploit
ツール/GitHubGitHub/tc4dy/cve-2026-57821-poc-exploit
静的分析脆弱性分析コード分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育データベースセキュリティ

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
GitHub
tc4dy/cve-2026-57821-poc-exploit

CVE-2026-57821-PoC-Exploit

🔐 CVE-2026-57821 - Apache Fineract SQLインジェクションツールキット 📚 認可されたセキュリティテスト用の2つのPythonスクリプト: verifier.py (安全な検出、抽出なし) と exploit.py (深層分析)。11種類のDBタイプに対応。SQLインジェクションの脆弱性を理解するのに最適。合法的なテストのみ ⚠️ 教育・研究目的専用。

リポジトリを見る
321ヶ月前未レビュー
共有

CVE-Picture

🛡️ CVE-2026-57821 – Apache Fineract SQL Injection

⚠️ 法的・倫理的注意事項 このツールキットは、教育、トレーニング、および許可されたセキュリティテストのみを目的として提供されています。 明示的な書面による許可なくいかなるシステムに対して不正に使用することは違法であり、コンピュータ犯罪に関する法律に違反します。 著者は誤用または損害に対して一切の責任を負いません。 あなた自身の行動に対して責任を負うのはあなたです。


📋 脆弱性概要

CVE-2026-57821 は、Apache Fineract のオフィス一覧 API エンドポイントで発見された SQL インジェクション の脆弱性です。

🎯 影響を受けるコンポーネント

属性詳細
エンドポイント/api/v1/offices
パラメータorderBy
メソッドGET
認証要件あり(認証済みユーザーのみ)
影響を受けるバージョンApache Fineract ≤ 1.14.0
修正済みバージョンApache Fineract 1.15.0

🧠 仕組み

この脆弱性は、orderBy パラメータが適切なサニタイズなしに SQL クエリに直接埋め込まれるために存在します。有効な認証情報を持つ攻撃者は、括弧 () で囲まれたサブクエリを orderBy パラメータに注入できます。

これまでの修正を回避できる理由:

  • CVE-2024-32838 では、ORDER BY 句をサニタイズするための ColumnValidator が導入されました
  • このバリデータは、括弧内のベアサブクエリを検出できません
  • これにより、ORDER BY コンテキスト内での任意の SQL 実行が可能になります

攻撃ベクターの例:

GET /api/v1/offices?orderBy=(SELECT CASE WHEN (1=1) THEN pg_sleep(5) ELSE pg_sleep(0) END)&limit=1

⚡ 潜在的な影響

影響説明
データ窃取時間ベースのブラインド SQL インジェクションにより、機密性の高いデータベースコンテンツを抽出できます
サービス拒否 (DoS)高負荷なクエリにより、コネクションプールのリソースを枯渇させる可能性があります
情報漏えいエラーベースの手法により、データベース構造やデータが明らかになる可能性があります

👤 発見と開示

属性詳細
発見者 / 報告者Terence Monteiro (Apache Fineract Team)
公開開示日2026年7月14日
修正済みバージョンApache Fineract 1.15.0
公式発表Apache Mailing List
GitHub 修正PR #6048

🗄️ サポート対象データベースシステム

このツールキットは、11種類の異なるデータベースバックエンドに対して自動的に検出し、悪用手法を適応させます:

データベース検出方法悪用手法
PostgreSQL時間ベース (pg_sleep)時間ベースブラインド
MySQL時間ベース (SLEEP)時間ベースブラインド
MariaDB時間ベース + @@version_comment時間ベースブラインド
MSSQLエラーベース (CONVERT 失敗)エラーベース
Oracle時間ベース (DBMS_LOCK.SLEEP)時間ベースブラインド
SQLite高負荷クエリ (デカルト結合)時間ベース (高負荷)
Firebird高負荷クエリ (デカルト結合)時間ベース (高負荷)
DB2高負荷クエリ (デカルト結合)時間ベース (高負荷)
Informix高負荷クエリ (デカルト結合)時間ベース (高負荷)
H2高負荷クエリ (デカルト結合)時間ベース (高負荷)
不明 (汎用)PostgreSQL にフォールバック時間ベース

🛠️ ツールキット構成要素

このプロジェクトは、さまざまなセキュリティ評価シナリオに対応する2つの Python スクリプトを提供します:

📊 verifier.py – 安全かつ最小限の検証ツール

目的: データを抽出せずに脆弱性の存在をすばやく証明します。

機能:

  • データベース固有のテストペイロードを送信します
  • 時間遅延またはエラーメッセージを検出します
  • 各データベースタイプについて VULNERABLE または NOT VULNERABLE を報告します
  • いかなるデータも窃取しません

✅ 利点:

  • 非常に高速(数秒で完了)
  • 法的リスクが低い(存在の検証のみ)
  • 初期セキュリティスキャンに最適
  • コンプライアンス対応のレポート出力

📋 ユースケース: ターゲットが脆弱かどうかを判断するための最初の評価。

🔬 exploit.py – 包括的なセキュリティアナライザー

目的: 脆弱性を完全に悪用してデータベース情報を抽出します。

機能:

  • データベースタイプを自動検出します
  • 二分探索を使用して1文字ずつ抽出します
  • 取得項目: バージョン、現在のユーザー、データベース名、テーブル一覧(設定可能)
  • MSSQL: エラーベース抽出
  • その他: ベースラインキャリブレーションによる時間ベース抽出

✅ 利点:

  • 影響の具体的な証拠を提供します
  • 脆弱性の全範囲を示します
  • 色分けされた出力による詳細なログ記録

📋 ユースケース: 脆弱性確認後の詳細なセキュリティ分析。

🔍 主な違い: verifierPoC.py は脆弱性の有無を示し、exploit.py は何を抽出できるかを示します。両者はセキュリティ評価ワークフローにおいて、明確に異なるが補完的な役割を果たします。


⚙️ インストールと設定

前提条件

  • Python 3.6+
  • requests ライブラリ
root@kitploit:~
pip install requests

⚙️ 設定変数

両方のスクリプトの先頭にある以下の変数を編集します:

変数説明デフォルト
TARGETFineract API の URLhttp://localhost:8080/fineract-provider/api/v1/offices
USERNAMEAPI 認証ユーザー名mifos
PASSWORDAPI 認証パスワードpassword
TENANT_IDテナント識別子default
BASE_SLEEP時間ベーステスト用のスリープ時間 (exploit.py)6
SLEEP_SECONDS時間ベーステスト用のスリープ時間 (verifier.py)5
TIMEOUTHTTP リクエストのタイムアウト25 (exploit) / 15 (verifier)
MAX_RETRIES失敗したリクエストの再試行回数2

🚀 使用ガイド

1️⃣ exploit.py - 詳細スキャン

root@kitploit:~
python3 exploit.py

期待される出力:

root@kitploit:~
CVE-2026-57821 - Apache Fineract Vulnerability Verifier
══════════════════════════════════════════════════════════════════════════════════════
@tc4dy is here :) Good Luck!

CONNECTION SUCCESS
BASELINE: 0.234s
STARTING VULNERABILITY VERIFICATION
VERIFICATION RESULTS
PostgreSQL: VULNERABLE
MySQL: NOT VULNERABLE
MariaDB: NOT VULNERABLE
Oracle: NOT VULNERABLE
MSSQL: NOT VULNERABLE
CONCLUSION: TARGET IS VULNERABLE (CVE-2026-57821 CONFIRMED)

Interpretation: If VULNERABLE appears for any database type, the target is affected.

🎯 技術仕様

CVSS スコア 指標 値 CVSS v3.1 Base Score 8.1 (High) ベクター CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H 攻撃元 ネットワーク 必要な権限 低 ユーザー操作 なし EPSS スコア

root@kitploit:~
0.29% (30日以内に悪用される確率)

CWE マッピング

root@kitploit:~
CWE‑89: SQL コマンドに使用される特殊要素の不適切な無効化('SQL インジェクション')

🧪 技術的詳細

ペイロードが機能する理由

Apache Fineract 1.14.0 の脆弱なコード:

root@kitploit:~
// Simplified vulnerable logic
String orderBy = request.getParameter("orderBy");
if (ColumnValidator.isValid(orderBy)) {
    // VALIDATOR FAILS FOR: "(SELECT ...)"
    // Only checks against simple column names
    String sql = "SELECT * FROM offices ORDER BY " + orderBy;
    // Executes query with user input directly
}

攻撃者ペイロードの例:

root@kitploit:~
GET /api/v1/offices?orderBy=(SELECT CASE WHEN (1=1) THEN pg_sleep(5) ELSE pg_sleep(0) END)&limit=1

結果として生成される SQL:

root@kitploit:~
SELECT * FROM offices ORDER BY (SELECT CASE WHEN (1=1) THEN pg_sleep(5) ELSE pg_sleep(0) END)

ColumnValidator はカラム名をチェックしますが、ネストされたサブクエリを見逃すため、任意の SQL 実行が可能になります。

🛡️ 緩和策

対策優先度
Apache Fineract 1.15.0+ へのアップグレード🔴 重大
PR #6048 パッチの適用🔴 重大
WAF ルール: (SELECT、SLEEP(、pg_sleep(、WAITFOR を含む orderBy をブロック🟠 高
括弧またはサブクエリキーワードを含む orderBy のログ監視🟠 高
リソース枯渇を検出するためのデータベースコネクションプール監視🟡 中
ツールをダウンロード