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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/moalali/cve-2025-56380
ペイロード生成脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育
GitHubmoalali/cve-2025-56380

CVE-2025-56380

Frappe Framework v15.72.4 に、frappe.client.get_value APIエンドポイントの fieldname パラメータを介した SQLインジェクションの脆弱性が発見されました。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-56380 — Frappe / ERPNext における時間ベースのブラインド SQL インジェクション(frappe.client.get_value)

📌 概要 Frappe Framework v15.72.4 の frappe.client.get_value API エンドポイント(ERPNext v15.67.0 コードベースにも存在)に、時間ベースのブラインド SQL インジェクションの脆弱性が発見されました。レポート / クライアント API にアクセスできる認証済みユーザーは、fieldname パラメータを介して SQL を注入できます。fieldname パラメータに時間遅延関数(例: sleep(15))を挿入することで、攻撃者は応答遅延の測定により注入を確認できます。これにより、サービス運用妨害(DoS)、情報漏えい(ブラインド手法による)、およびデータ改ざんが可能になります。


🛠 技術詳細

  • 脆弱性タイプ: SQL インジェクション(時間ベースのブラインド)(CWE‑89)

  • 影響を受ける製品: Frappe Framework / ERPNext

  • 影響を受けるバージョン(報告時点):

    • Frappe — 15.72.4
    • ERPNext — 15.67.0(同じコードベースが影響)
  • 影響を受けるコンポーネント: frappe.client.get_value API メソッド(frappe/client.py)

  • 脆弱なエンドポイント:

    root@kitploit:~
    /api/method/frappe.client.get_value
    

    脆弱性のあるクエリの例:

    root@kitploit:~
    /api/method/frappe.client.get_value?doctype=Report&fieldname=ref_doctype+%2F+sleep(15)+&filters=Profit+and+Loss+Statement&_=1752174156893
    
  • 脆弱なパラメータ: fieldname(不適切にサニタイズされず SQL に連結される)

  • 攻撃タイプ: リモート(認証とレポート API へのアクセスが必要)

  • 深刻度: 高(時間ベースのブラインド SQLi により、データの外部漏えい、DoS、および改ざんが可能)

  • 推定 CVSS v3.1 スコア: 8.0(高) — 認証が必要なリモート SQL インジェクションによりデータ開示と DoS が可能となることに基づく推定値。正式なスコアは採番機関が実施する必要があります。

  • ステータス: 未修正(報告時点)

  • 発見者: Mohammed Aloli(GitHub: https://github.com/MoAlali)

  • 発見日: 報告書では指定なし

  • CVE ID: CVE-2025-56380


🚀 概念実証(PoC)— 時間ベースのブラインド SQLi

認可された環境 / ラボ環境でのみテストしてください。所有していない、または明示的なテスト許可を得ていないシステムに対して実行しないでください。

PoC リクエスト(例): image

root@kitploit:~
GET /api/method/frappe.client.get_value?doctype=Report&fieldname=ref_doctype+%2F+sleep(15)+&filters=Profit+and+Loss+Statement&_=1752174156893

確認手順

  1. レポート / get_value API にアクセスできるユーザーで対象の Frappe/ERPNext インスタンスに認証します。
  2. 上記の GET リクエスト(または同等の URL エンコードされたペイロード)を送信します。
  3. 応答時間を観察します。応答が約 15 秒遅延した場合、時間ベースの注入が成功したことを示します。
  4. 同じリクエストを繰り返して再現性を確認します。
  5. 注入した +%2F+sleep(15)+& ペイロードを削除して応答が即座に返ることを観察し、注入が時間遅延を引き起こすことを確認します。

注記: バックエンドの DBMS に応じて、sleep(15) を他の時間関数や時間値(例: PostgreSQL の pg_sleep(n))に置き換えてください。PoC はタイミングによるブラインド注入を示しています。より複雑なペイロードを使用してデータをビット単位で抽出することも可能です。


🧪 攻撃ベクトルと影響

  • 攻撃ベクトル: 認証済みユーザーが、悪意のある fieldname パラメータ(SQL ペイロード(時間遅延関数)を含む)を指定して /api/method/frappe.client.get_value に GET リクエストを作成します。

  • 影響:

    • サービス運用妨害(DoS): サーバー応答の強制遅延(悪用された場合のリソース枯渇)。
    • 情報漏えい: 時間ベースの手法(ビット単位 / 時間条件付きクエリ)によるブラインドデータ抽出。
    • データ改ざん: 他の SQL インジェクションベクトルが利用可能な場合、データベースの状態を変更できる可能性。
    • その他: アプリケーションユーザーが持つ DB 権限に応じた影響の拡大。

🔐 緩和策の推奨事項

  1. パラメータ化クエリ / プリペアドステートメント: fieldname およびすべてのユーザー指定入力を SQL に直接連結しないでください。パラメータを適切にバインドするパラメータ化クエリまたは ORM API を使用してください。
  2. 厳格な入力検証 / ホワイトリスト化: フィールド名や識別子であるべきパラメータについては、既知の有効なフィールド名の厳密な許可リストに対して検証するか、クライアントから生のフィールド識別子を受け入れるのではなくサーバー側のマッピングを使用してください。
  3. 識別子を安全にエスケープ: 識別子を動的に使用する必要がある場合は、DB 固有の安全な識別子引用 / エスケープ関数を使用し、それでも許可される値を制限してください。
  4. 最小権限の DB アカウント: アプリケーションを、必要な権限のみを持つデータベースユーザーで実行してください(レポートエンドポイントでは可能な限り読み取り専用)。
  5. レート制限と監視: レート制限を適用し、異常なリクエストパターンや繰り返される時間遅延テストを検出し、不審なトラフィックに対してアラートを発報してください。
  6. 監査とロギング: 機密性の高い API エンドポイントへのリクエストをログに記録し、不審なペイロード(例: sleep、pg_sleep、benchmark、/、;)を監視してください。
  7. パッチとリリース: Frappe/ERPNext 開発者は frappe.client.get_value と fieldname/フィルタを処理するコードパスを監査し、安全でない連結を安全な API に置き換え、セキュリティパッチをリリースする必要があります。運用者は更新を迅速に適用してください。
  8. セキュリティテスト: API エンドポイントで SQL インジェクション(時間ベースのブラインドを含む)を検出する自動テストを追加してください。

🔗 参考情報

  • 発見者 / 報告者: Mohammed Aloli — GitHub: https://github.com/MoAlali — X: https://x.com/alaliksa_ — LinkedIn: https://www.linkedin.com/in/mohammedaloli/
  • Frappe / ERPNext コードベース(レビューおよびパッチ用): https://github.com/frappe/frappe 、 https://github.com/frappe/erpnext
  • 一般的な SQLi ガイダンス: OWASP SQL インジェクション防止チートシート — https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html

🙏 謝辞

Mohammed Aloli によって発見されました。


📢 免責事項

この情報は、防御および是正目的でのみ提供されています。所有していない、またはテストする明示的な許可を得ていないシステムに対して、この脆弱性を悪用しようとしないでください。運用者はパッチ適用を優先し、安全なコーディング修正を適用し、上記の緩和策に従ってください。

ツールをダウンロード