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

セキュリティ報告:Drupal コア 7.x および 8.x

Drupal セキュリティ チームからの連絡です(日本時間 2020/05/21(木)01:15 AM~)

今回は Drupal コアに関するセキュリティー勧告が2つ出ました。1つは D7、D8 に含まれている jQuery の脆弱性(クロスサイト スクリプティング)、もう1つは D7 のオープン リダイレクト脆弱性(任意の外部サイトへのリダイレクト)に関するものです。

モジュール(重大性スコア)


Drupal コア

オンラインの原文: Drupal core - Moderately critical - Cross Site Scripting - SA-CORE-2020-002


概要

jQuery プロジェクトはバージョン 3.5.0 をリリースした。それに伴う情報として、それ以前のすべてのバージョンに影響するセキュリティー脆弱性を公開した。jQuery blog に掲載のとおり、以下の記述が当てはまる。

…(今回修正されたのは).html()、.append() など、jQuery の DOM 操作メソッドにあったセキュリティーの問題。両方の問題に対するセキュリティー勧告は GitHub に掲載された。

この勧告は以下のとおり:

Drupal サイトによっては、これらの脆弱性が悪用される可能性がある。今回の Drupal セキュリティーリリースでは、Drupal コアに含まれているバージョンや jQuery Update など他のモジュールを通じてサイト上で動いているバージョンの jQuery に手を加えることなく該当する jQuery 機能に修正がバックポートされている。このため、jQuery Update モジュールがインストールされている Drupal 7 サイトでは別途、jquery_update をアップデートする必要はない。

jQuery が以前と同じように動作する必要がある Drupal サイトにおいてリグレッション問題が起こるのを最小限にとどめるため、後方互換性コード(Backwards-compatibility code)も追加された。jQuery 3.5 では、JavaScript 内にある誤った自己終了(self-closing)HTML タグで、通常なら終了タグが必要な要素に対して jQuery が返すもの、または挿入するものが変更されることになる。8.8.x 以前のバージョンに対するこの影響を最小限にとどめるため、このセキュリティー リリースでは、いちばん安全なタグに対しては以前の jQuery の動作が保持されている。それでも、Internet Explorer における無効な自己終了のカスタム要素など特定のケースではリグレッションの問題が生じる可能性がある。

(注:今後リリースされる Drupal 8.9 および 9.0 には、この後方互換性レイヤーが含まれないため、Drupal 8 および 9 のモジュール、テーマおよびサイトでは、JavaScript 内のタグを修正し、終了タグを適切に使う必要がある)

jQuery の変更によってリグレッション問題が生じた場合、Drupal コアのイシュー キュー(または該当する貢献モジュールのプロジェクト)に報告してください。ただし、セキュリティーの問題を見つけた場合は個別(プライベート)に Drupal セキュリティー チームに報告してください


解決方法

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

  • Drupal 8.8 を使用している場合は Drupal 8.8.6 にアップデートする。
  • Drupal 8.7 を使用している場合は Drupal 8.7.14 にアップデートする。
  • Drupal 7 を使用している場合は Drupal 7.70 にアップデートする。

Drupal 8.7 よりも前の Drupal 8 バージョンはサポート終了(EOL)のため、セキュリティー対応バージョンは提供されない。8.6 以前を使用しているサイトは 8.7.14 にアップデートするように。

Drupal のプリリリース バージョン(8.9、9.0)では 8.9.0-beta3 と 9.0.0-beta3 から jQuery がバージョン 3.5.1 にアップデートされた。


Drupal コア

オンラインの原文: Drupal core - Moderately critical - Open Redirect - SA-CORE-2020-003


概要

Drupal 7 にはオープン リダイレクトの脆弱性がある。ユーザーは細工されたリンクにアクセスするよう仕向けられ、そこから任意の外部 URL へとリダイレクトされてしまう可能性がある。

この脆弱性は、drupal_goto()関数の destination クエリ パラメータの検証が不十分なために生じる。

ほかのバージョンの Drupal コアには、この脆弱性はない。


解決方法

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

  • Drupal 7 を使用している場合は Drupal 7.70 にアップデートする。