Cisco Japan Blog

注目の脆弱性:Ghost CMS における XSS の脆弱性

1 min read



脆弱性の発見者:Cisco Talos Dave McDaniel

Cisco Talos は最近、Ghost CMS にクロスサイト スクリプティング(XSS)の脆弱性を発見しました。

コンテンツ管理システム(CMS)である Ghost は、Web サイトを構築し、コンテンツを公開し、ニュースレターを送信するためのツールを備えています。Ghost では、会員向けの有料サブスクリプション機能が提供されているほか、外部サービスとの統合がいろいろサポートされています。

TALOS-2022-1686popup_icon(CVE-2022-47194 ~ CVE-2022-47197)では、XSS の複数の脆弱性が特権昇格につながる可能性があることを説明しています。

Ghost CMS では、ユーザーを 4 つのグループ(サイト所有者を含めると 5 つ)に分けており、Contributor(寄稿者)、Author(著者)、Editor(編集者)、Administrator(管理者)の順に権限が大きくなります。Contributor ユーザーには最小限の権限が与えられていて、投稿の作成はできますが、公開はできません。すべてのユーザーは、ソーシャルメディアのリンクなどの情報をフィールドに含めることができ、それらの情報がユーザーの投稿や著者のページに表示されます。これらのフィールドの多くに「保存された XSS」の脆弱性が存在します。ユーザーに対する基本的な攻撃から完全な特権昇格まで、この脆弱性が利用される可能性があります。他の XSS と同様、正しいアクセスレベルを持つ標的ユーザーがログインしている状態で影響を受けたリソースにアクセスした場合に、挿入された JavaScript が実行されます。悪意のあるユーザーによる投稿を上位レベルのユーザーがプレビューするか、そのような投稿にアクセスするだけで、ここに挙げた脆弱性が引き起こされる可能性があります。ソーシャルメディアのリンクはおそらく、ユーザーのすべての投稿に表示されるからです。Talos が確認したところでは、正しく動作する JavaScript ペイロードを使用することで、管理者への完全な特権昇格が可能になります。

https://ghost.org/docs/config/#admin-url に記載されているように、管理ドメインを分離すれば、この種の脆弱性がエクスプロイトされて特権 API 呼び出し(ユーザーグループの変更、ユーザーの追加など)が実行されることを防ぐことができます。ただし、デフォルトのインストールでは、XSS を介した特権昇格にこれらの脆弱性が使用される可能性があります。これは実質的に、Ghost CMS のデフォルトのインストールではページを作成できるユーザーと管理者ユーザーが同じ権限を持つことを意味します。

このアドバイザリについて Ghost に通知したところ、次の回答を得ました。「Ghost は、信頼されたユーザーが使用する前提で設計されています。当方は、スタッフユーザーが攻撃し合うという仮説的な攻撃ベクトルには関心がなく、そうした製品の使用方法は意図していません。信頼できない環境で Ghost を使用しているユーザーのために、スタッフユーザー間の懸念事項をさらに分離するための手順を明確に文書化しました。ただし、今回のレポートが有効だとみなしているわけではありません」

デフォルトのインストールで特権を昇格することは簡単ではないため、これらの脆弱性は潜在的なセキュリティの問題だというのが Cisco Talos の見解です。Talos は、シスコの脆弱性開示ポリシーpopup_iconに従って Ghost に通知しました。

Talos では、このバージョンの Ghost(Ghost Foundation Ghost 5.9.4)が今回の脆弱性によってエクスプロイトされる可能性があることをテストして確認済みです。

今回の脆弱性のエクスプロイトは、Snort ルール(60764 ~ 60765)で検出できます。今後、ルールが追加されたり、脆弱性に関して追加される情報によっては現行のルールが変更されたりする場合があります。最新のルールの詳細については、Firepower Management Center または Snort.org を参照してください。

 

本稿は 2023 年 01 月 19 日に Talos Grouppopup_icon のブログに投稿された「Vulnerability Spotlight: XSS vulnerability in Ghost CMSpopup_icon」の抄訳です。

 

コメントを書く