オープンソース・ソフト Drupal を使った Web サイトの構築・サポート・研修

セキュリティー報告:Services 7.x、Context 7.x、Path Breadcrumbs 7.x、Rabbit Hole 7.x、Facets 8.x

Drupal セキュリティー チームからの連絡です(日本時間 2019/02/28(木)03:10 AM~)

今週は拡張モジュールが 5 つです。すべての記事を訳しました。

モジュール(重大性スコア)使用サイト数



Context

オンラインの原文: Context - Moderately critical - Cross site scripting - SA-CONTRIB-2019-028

  • プロジェクト:Context
  • バージョン:7.x(原文では 7.x-3.x-dev)
  • 月日: 2019 年 02 月 27 日
  • セキュリティー リスク:14/25 (重大性 中程度)
    AC:Basic/A:User/CI:Some/II:Some/E:Theoretical/TD:All
  • 脆弱(ぜいじゃく)性:クロスサイト スクリプティング

概要

Context モジュールを利用すると、コンテクストの条件と、サイトのさまざまな部分のリアクションを管理できる。

このモジュールでは、画面表示の際、ユーザー出力に対するサニタイズ処理が不十分。このため、クロスサイト スクリプティング(XSS)の脆弱性につながる可能性がある。

事実として、攻撃者は悪意のあるマークアップ データをサイト内に保持する(たとえば、「フィルターされた HTML」(訳注:「ベーシック HTML」か「制限付き HTML」?)を許可するフィールドのあるノードを作成する権限を持つ)ことができなくてはならないので、この脆弱性は軽減される。


解決方法

最新バージョンをインストールする。

  • Drupal 7.x 用の Context モジュールを使用している場合は Context 7.x-3.10 にアップデートする。

 Context プロジェクト ページも参照。


Services

オンラインの原文: Services - Critical - SQL Injection - SA-CONTRIB-2019-026


概要

Services モジュールは、外部のクライアント機器が Drupal と通信できるよう、API を構築するための標準化されたソリューションになる。

このモジュールでは、エンティティ インデックス リソース用のユーザー入力に対するサニタイズ処理が不十分なため、任意の SQL インジェクション攻撃が可能。

事実として、Drupal 7 サイトでは、Services エンドポイント設定 (admin/structure/services/list/MY-ENDPOINT/resources) で「index」リソースが有効化されていなくてはならず、攻撃者はそのエンドポイントのマシン名を知らなくてはならないため、この脆弱性は軽減される。

(対策としては)Services モジュール バージョン 7.x-3.22 をインストールして問題を修正するか、「index」リソースを無効化して攻撃経路を遮断すればよい。


解決方法

最新バージョンをインストールする。

  • Drupal 7.x 用の Services モジュールを使用している場合は Services 7.x-3.22 にアップデートする。

Path Breadcrumbs

オンラインの原文: Path Breadcrumbs - Moderately critical - Cross site scripting - SA-CONTRIB-2019-027


概要

Path Breadcrumbs モジュールを利用すると、Drupal サイトのあらゆるページ用にパンくずリストを設定できる。

このモジュールでは、カスタムのパンくずリスト設定に対するサニタイズ処理が不十分な場合があるため、クロスサイト スクリプティングの脆弱性につながる可能性がある。

事実として、攻撃者には「Path Breadcrumbs を管理(Administer Path Breadcrumbs)」の権限がなくてはならないため、この脆弱性は軽減される。


解決方法

最新バージョンをインストールする。

  • Path Breadcrumbs モジュールを使用している場合は Path Breadcrumbs 7.x-3.4 にアップデートする。

 Path Breadcrumbs プロジェクト ページも参照。


Rabbit Hole

オンラインの原文: Rabbit Hole - Moderately critical - Access bypass - SA-CONTRIB-2019-029


概要

Rabbit Hole モジュールを利用すると、サイト管理者は、あるページに属するエンティティを通常のユーザーが見ようとした場合の挙動を制御できる。たとえば(カルーセルに表示される画像を直接開こうとした場合など)「403 Access Denied」または「404 Page Not Found」といった応答を返すことも、ユーザーを他のパスへリダイレクトすることもできる。

このモジュールでは、エンティティが特定のヘッダーと共にリクエストされた場合、Rabbit Hole の設定が無視されてしまう。このため、露出すべきでない特定のデータが露出してしまう可能性がある。事実として、ユーザーにはリクエストされたコンテンツを見る権限も必要なため、この脆弱性は軽減される。


解決方法

最新バージョンをインストールする。

  • Drupal 7.x 用の Rabbit Hole モジュールを使用している場合は Rabbit Hole 7.x-2.25 にアップデートする。

Facets

オンラインの原文: Facets - Moderately critical - Cross site scripting - SA-CONTRIB-2019-030


概要

Facets モジュールを利用すると、検索クエリーの結果用およびそれをブロックとして表示するためのファセット フィルターを作成できる。

このモジュールでは、特定のシナリオにおいて HTML コードのエスケープ処理が不十分なため、クロスサイト スクリプティング(XSS)の脆弱性につながる可能性がある。

この脆弱性は 2 つの事実によって軽減される。1. 攻撃者には、データセットがファセットとして表示される前に検索結果を挿入する手段がなくてはならないということ。悪意のあるストリングを注入するための権限はサイトの検索設定によるが、サイト内にコンテンツを作成できるユーザーなら誰でも持てる可能性がある。2. サイトはドロップダウン ウィジェットをベースにした JavaScript を使用している必要があるということ。


解決方法

最新バージョンをインストールする。

  • Facets モジュールを使用している場合は Facets 8.x-1.3 にアップデートする。

効果的な緩和対策としては、ドロップダウン ウィジェットではなく、ウィジェットがリンクを使うようにするとよい。