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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-8239 — Concrete CMSのget_ratingエンドポイントにおける認可の欠如により、会話の評価が露出するIDOR(Insecure Direct Object Reference)のセキュリティ解説記事。根本原因、攻撃シナリオ、修正方法を解説。 | Kitploit
ツール/GitHubGitHub/aj2108/cve-2026-8239
認証と認可脆弱性分析ウェブアプリケーション悪用情報収集ウェブセキュリティ学習と教育
GitHubaj2108/cve-2026-8239

CVE-2026-8239

Concrete CMSのget_ratingエンドポイントにおける認可の欠如により、会話の評価が露出するIDOR(Insecure Direct Object Reference)のセキュリティ解説記事。根本原因、攻撃シナリオ、修正方法を解説。

リポジトリを見る
19日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-8239

CVE-2026-8239 は、Concrete CMS 9.5.0 以前に影響する Insecure Direct Object Reference (IDOR) 脆弱性です。この脆弱性は /ccm/frontend/conversations/get_rating エンドポイントに存在し、攻撃者が任意のメッセージ ID を指定することで、会話メッセージが存在するかどうかを判定し、その評価スコアを取得できるようにします。このエンドポイントは、要求された情報を返す前に適切な認可チェックを実行していません。

影響を受けるソフトウェア

製品: Concrete CMS 影響を受けるバージョン: 9.5.0 以前 修正バージョン: 9.5.1 エンドポイント: /ccm/frontend/conversations/get_rating 脆弱性の種類 カテゴリ: Insecure Direct Object Reference (IDOR) CWE-862: 認可の欠如

根本原因

このエンドポイントはクライアントからメッセージ ID を受け取り、要求元ユーザーがそのメッセージにアクセスする権限があるかどうかを検証せずに、そのメッセージに関する情報を返します。

アプリケーションは所有権や権限を検証する代わりに、ユーザーが指定した識別子を信頼します。

概念的には:

ユーザーが messageId を指定 ↓ サーバーがメッセージを特定 ↓ 認可チェックなし ↓ メッセージの評価を返す

認可チェックが欠如しているため、攻撃者はメッセージ ID を列挙して、アクセスすべきでない会話に関する情報を取得できます。

攻撃シナリオ

アプリケーションが会話メッセージを数値 ID で保存しているとします。

正規のリクエストは次のように参照される可能性があります:

GET /ccm/frontend/conversations/get_rating?messageId=125

攻撃者は単純に識別子を変更できます:

GET /ccm/frontend/conversations/get_rating?messageId=126

アプリケーションが 403 Forbidden や 404 Not Found を返す代わりに評価スコアで応答した場合、攻撃者はメッセージが存在することを確認し、その評価情報を取得できます。

これは、オブジェクト識別子だけが変更され、悪意のあるペイロードやインジェクションコマンドが不要であるため、典型的な IDOR です。

影響

攻撃者は以下を行うことができます:

有効な会話メッセージ ID を列挙する。 特定のメッセージが存在するかどうかを確認する。 アクセス権のないメッセージの評価スコアを取得する。 プライベートな会話に関する限定的な情報を得る。

この脆弱性は主に機密性に影響します。認可されていないユーザーが保護されるべき情報にアクセスできるためです。

深刻度

メトリック スコア CVSS v3.1 (NVD) 5.3 – Medium CVSS v4.0 (Concrete CMS CNA) 6.3 – Medium

概念的な脆弱コード

ベンダーは実際の脆弱なソースコードを公開していません。次の例は脆弱性パターンのみを示しています。

$messageId = $_GET['messageId'];

$message = $conversationRepository->findMessage($messageId);

// 認可チェックなし return response()->json([ 'rating' => $message->getRating() ]);

なぜ脆弱なのか

アプリケーションはユーザーが指定した ID のみに基づいてメッセージを取得し、その評価をすぐに返します。現在のユーザーがそのメッセージにアクセスできるかどうかは決してチェックしません。

修正コード (概念的)

$messageId = $_GET['messageId'];

$message = $conversationRepository->findMessage($messageId);

if (!$authorizationService->canViewMessage($currentUser, $message)) { return response()->json([ 'error' => 'Access denied.' ], 403); }

return response()->json([ 'rating' => $message->getRating() ]);

この修正が機能する理由

修正された実装は、評価を返す前に、認証されたユーザーが要求されたメッセージを表示する権限を持っていることを検証します。攻撃者が messageId を変更した場合でも、サーバーは認可を強制し、HTTP 403 Forbidden 応答で不正なリクエストを拒否します。これにより、ユーザーが表示を許可されたリソースのみにアクセスできることが保証され、IDOR が防止されます。

ツールをダウンロード