Drupal Core に複数の脆弱性:任意の PHP コード実行 CVE-2022-25277 などが FIX

Drupal developers fixed a code execution flaw in the popular CMS

2022/07/25 SecurityAffairs — 人気の CMS である Drupal に存在する、複数の脆弱性に対応するセキュリティ・アップデートがリリースされた。これらの脆弱性については、米国 Cybersecurity and Infrastructure Security Agency (CISA) もアドバイザリを発表している。この中で最も深刻なものは、任意の PHP コード実行の脆弱性 CVE-2022-25277 (深刻度:Critical)だ。

Drupal は、アドバイザリで、「Drupal Core は、危険な拡張子を持つファイル名を、アップロード時にサニタイズする (参照:SA-CORE-2020-012) 。そして、サーバ設定ファイルのアップロードを防ぐため、ファイル名から先頭および末尾のドットを除去する (参照:SA-CORE-2019-010) 」と説明している。

さらに、同社は、「しかし、脆弱性に対する、これらの2つの保護機能は、以前は連携して正しく動作していなかった。その結果として、htaccess 拡張子を持つファイルのアップロードを許可するように、サイトが設定されていた場合に、これらのファイル名は適切にサニタイズされないことになる。つまり、Drupal Core のデフォルトの .htaccess ファイルが提供する保護をバイパスし、Apache Web サーバ上でリモート・コード実行を可能にする」と述べている。

この問題を軽減するためには、ファイル・フィールドの拡張子として htaccess を許可するように、フィールド管理者が明示的に設定する (制限付きパーミッション)  必要がある。または、コントリビュートされたモジュール/カスタムコードで、許可されているファイル・アップロードを上書きすることが必須となる。この脆弱性はバージョン 9.4/9.3 に影響するが、アドバイザリでは、特定の設定をした Apache サーバにのみ影響すると述べられている。

他の3つの脆弱性は、cross-site scripting (XSS) 攻撃/情報漏えい/アクセス・バイパスなどにつながる Moderately Critical と評価されている。すべての脆弱性が、バージョン9.4/9.3 に影響するが、情報漏えいの脆弱性は、バージョン 7 にも影響する。

この Drupal Core の脆弱性 CVE-2022-25277 ですが、アドバイザリ SA-CORE-2022-014 として公表されています。そこには、「従来からの SA-CORE-2020-012 と SA-CORE-2019-010 という、2つの脆弱性に対する保護は、正しく連携していなかった。 その結果として、htaccess という拡張子を持つファイルのアップロードが許可されるように構成されている場合には、それらのファイル名は適切にサニタイズされなかった」と記されています。