WordPress LiteSpeed Cache の XSS 脆弱性 CVE-2024-47374 が FIX:直ちにアップデートを!

CVE-2024-47374: LiteSpeed Cache Plugin Flaw Threatens Millions of WordPress Sites

2024/10/02 SecurityOnline — 600万以上のアクティブなインストール数を誇る、人気の WordPress 用の LiteSpeed Cache プラグインに、重大なセキュリティ脆弱性が発見された。この脆弱性は、認証を必要としない蓄積型 XSS (cross-site scripting ) の脆弱性であり、WordPress サイト上の機密情報の窃取や特権をエスカレートを、単一の HTTP リクエストを介して攻撃者に許すものだ。この脆弱性 CVE-2024-47374 (CVSS 7.1) は、LiteSpeed Cache プラグインのバージョン 6.5.1 で修正されている。

LiteSpeed Cache は、WordPress サイトを最適化するために設計された、オールインワンのサイト高速化プラグインである。独自のサーバレベルのキャッシュと、WordPress Multisite のサポートや、WooCommerce/bbPress/Yoast SEO などの人気プラグインとの互換性を取り込んだ、最適化ツールのスイートを備えている。その主目的は、Web サイトからロード時間を短縮し、ユーザー・エクスペリエンスを向上させることで、パフォーマンスを強化するところにある。

この脆弱性の悪用に成功した、認証されていない攻撃者は、サイトの管理ページに悪意のスクリプトを注入することが可能となる。この蓄積型 XSS は、サーバ上に保存された悪意のコードが、管理者が特定ページを表示した際に実行されるというものだ。その影響は深刻であり、機密情報の盗難から完全な権限昇格まで多岐にわたり、Web サイトの完全な制御を奪われる可能性もある。

この脆弱性は、プラグインの特定の機能に存在する、入力に対する不十分なサニタイズと出力のエスケープに起因する。具体的に言うと、Critical CSS (CCSS) と Unique CSS (UCSS) のキューを生成する機能が、HTTP ヘッダーから提供されるユーザー入力を、適切に処理できないところに原因がある。キャッシュのバリエーションとユーザーのロールを組み合わせる “Vary Group” 機能は、適切なサニタイズを欠いた状態で、HTTP ヘッダーを通じて操作される可能性があり、悪意のコード・インジェクションにつながる。

この脆弱性を悪用する前提として、LiteSpeed Cache プラグインの、2つの設定を有効化する必要がある。

  1. CSS Combine:この、”Page Optimization” の下にある設定は、複数の CSS ファイルを1つに結合して HTTP リクエストを減らす。
  2. Generate UCSS:同じく “Page Optimization” 下の機能であり、各ページに固有の CSS を生成し、未使用のスタイルを削除することでロード時間を短縮する。

両方の設定が有効化されている場合において、このプラグインの “Vary Group” 入力の不適切な処理により、蓄積型 XSS 攻撃の影響を受けやすくなる。

この脆弱性は、WordPress の脆弱性に焦点を当てた、セキュリティ専門家のコミュニティ Patchstack Alliance の研究者である、Tai You により発見/報告された。

LiteSpeed Cache の開発者は、この報告に迅速に対応し、プラグインのバージョン 6.5.1 でパッチをリリースしている。ユーザー に対して推奨されるのは、このバージョン以降へと速やかに更新し、CVE-2024-47374 を悪用する攻撃から Web サイトを保護することだ。