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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/mbanyamer/cve-2026-24854-churchcrm-6.7.2-authenticated-numeric-sql-injection
脆弱性分析エクスプロイトウェブアプリケーション悪用ウェブセキュリティペネトレーションテスト学習と教育
GitHubmbanyamer/cve-2026-24854-churchcrm-6.7.2-authenticated-numeric-sql-injection

CVE-2026-24854-ChurchCRM-6.7.2-Authenticated-Numeric-SQL-Injection

ChurchCRM 6.7.2 以前のバージョンにおける認証済み数値SQLインジェクションを実証する概念実証であり、ロジック操作を可能にしてWHERE句をバイパスし、複数のレコードに影響を与えます。使用方法、パッチの詳細、および緩和策の推奨事項を含みます。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-24854 – ChurchCRM 認証済み数値SQLインジェクション(ロジック操作)PoC

著者: Mohammed Idrees Banyamer
国: ヨルダン
ハンドル: @banyamer_security
GitHub: https://github.com/mbanyamer


概要

このリポジトリには、ChurchCRM 6.7.2 より前のバージョンにおける認証済み数値SQLインジェクションの脆弱性を実証する Proof of Concept(PoC)が含まれています。

この脆弱性により、数値であると想定されたパラメータに非数値ペイロードを注入することでSQLクエリのロジック操作が可能となり、クエリの動作を不正に変更できます(例: WHERE句のバイパス)。

  • CVE ID: CVE-2026-24854
  • 脆弱性タイプ: 認証済み数値SQLインジェクション(ロジック操作)
  • 深刻度: 高
  • 影響を受けるバージョン: ChurchCRM < 6.7.2
  • テスト済みバージョン: 6.7.1
  • 修正済みバージョン: 6.7.2
  • 修正コミット: 748f5084
  • 攻撃ベクトル: 認証済みWebリクエスト
  • 認証の必要性: あり(低権限ユーザーで十分)

脆弱性の詳細

この脆弱性は以下のファイルに存在します:

root@kitploit:~
src/PaddleNumEditor.php

POSTパラメータ PerID は、適切な型キャストやサニタイズなしに複数のSQLクエリに直接連結されます。数値であることを意図していますが、SQLロジックを変更するように操作できます。

脆弱なパターンの例(概念):

root@kitploit:~
DELETE FROM multibuy_mb WHERE mb_per_ID = $PerID AND mb_fr_ID = $frID;

以下のようなペイロードを供給することで:

root@kitploit:~
0 OR 1=1 -- 

WHERE句のロジックをバイパスでき、単一レコードの操作を複数レコードまたは全テーブル操作に変換できる可能性があります。

この脆弱性はブラインドデータ抽出用ではなく、UPDATE、DELETE、INSERT操作に影響を与えるロジック悪用を目的としています。


影響

認証済みの攻撃者は以下が可能です:

  • 1件ではなく複数またはすべてのレコードを削除
  • 認可範囲外のレコードを変更
  • 募金活動や参加者データを操作
  • データ整合性の喪失を引き起こす
  • 典型的なSQLiアラームを発動させずにビジネスロジックを悪用

この欠陥は数値のみのロジックで発生するため、基本的なSQLインジェクション検出やWAFルールをバイパスする可能性があります。


Proof of Concept

PoCは以下を実証します:

ステップ1 – 通常リクエスト

数値の PerID を使用した正当なリクエストで、1件のレコードのみに影響します。

ステップ2 – 操作されたリクエスト

細工された数値SQLインジェクションペイロード:

root@kitploit:~
0 OR 1=1 -- 

このペイロードはWHERE句の制限をバイパスし、複数レコードまたは全テーブルへの影響(例: 一括削除)をもたらします。

PoCはHTTPレスポンスと動作の違いを比較し、操作の成功を確認します。


使用方法

要件

  • Python 3
  • requestsライブラリ
  • 脆弱なChurchCRMインスタンス(< 6.7.2)
  • 有効な認証済みユーザーアカウント

依存関係のインストール:

root@kitploit:~
pip install requests

設定

PoCスクリプト内の以下の変数を編集します:

root@kitploit:~
TARGET_BASE = "http://localhost/churchcrm"
USERNAME    = "admin"
PASSWORD    = "yourpassword"

⚠️ ローカルまたは認可されたテストインスタンスのみで使用してください


PoCの実行

root@kitploit:~
python3 churchcrm_cve-2026-24854_poc.py

検証

悪用を確認するには:

  • 通常レスポンスと操作されたレスポンスの違いを観察
  • 影響を受けるデータベーステーブル(例: multibuy_mb)を前後で確認
  • 予期しない複数行のDELETE/UPDATE動作を検証

is_success_response() 関数は、インスタンスの通常レスポンスと操作されたレスポンスに合わせて調整できます。


パッチ状況

この問題はChurchCRM 6.7.2で以下のコミットにより修正されました:

root@kitploit:~
748f5084

修正内容:

  • 以下の項目に明示的な (int) キャストを適用:
    • PerID
    • Num
    • 関連する識別子
  • 非数値入力は 0 に強制変換され、インジェクションを防止

ユーザーは直ちにアップグレードしてください。


緩和策の推奨事項

  • すべての数値入力に厳格な型キャストを適用
  • 文字列連結SQLの代わりにプリペアドステートメントを使用
  • 認証済みユーザーに最小権限を適用
  • レコード所有権のサーバーサイド認可チェックを追加
  • 異常な一括操作をログ記録しアラートを発行

責任ある開示

この脆弱性は以下によって発見され、責任を持って開示されました:

Mohammed Idrees Banyamer
ヨルダン
Instagram: @banyamer_security
GitHub: https://github.com/mbanyamer


免責事項

このProof of Conceptは教育および防御的なセキュリティ目的のみで提供されています。

所有していない、または明示的なテスト許可がないシステムに対してこのコードを使用しないでください。

著者は、このコードの誤用または損害について一切の責任を負いません。


参考情報

  • ChurchCRMウェブサイト: https://churchcrm.io
  • ChurchCRM GitHub: https://github.com/ChurchCRM/CRM
  • CVE: CVE-2026-24854

ツールをダウンロード