Mediumは3月27日(米国時間)、「“CVE-2024-21388”- Microsoft Edge’s Marketing API Exploited for Covert Extension Installation|by Guardio|Mar, 2024|Medium」において、Microsoft Edgeから同意なしに拡張機能をインストールできる脆弱性が発見されたとして、注意を呼びかけた。この脆弱性は「CVE-2024-21388」として追跡されており、2024年2月1日(米国時間)までに修正されている。

  • “CVE-2024-21388”- Microsoft Edge’s Marketing API Exploited for Covert Extension Installation|by Guardio|Mar、2024|Medium

    “CVE-2024-21388”- Microsoft Edge’s Marketing API Exploited for Covert Extension Installation|by Guardio|Mar, 2024|Medium

脆弱性「CVE-2024-21388」の概要

この脆弱性は、「bing.com」または「microsoft.com」などのMicrosoftドメインのWebページでJavaScriptを実行できれば、ユーザーの同意なしに拡張機能をインストールすることを可能にするもの。

これはChromiumエンジンを使用しているMicrosoft Edge特有の脆弱性で、Chromiumがベンダー向けに提供しているカスタマイズ機能に問題の端緒が存在する。Chromiumはベンダーが独自機能を実装可能にするため、制限されるべきAPI(Application Programming Interface)へのアクセスを安全に実現する仕組みを提供している。これらAPIはベンダー以外からのアクセスを防止するため、特定の条件に一致する場合にのみ呼び出すことができる。

Microsoft EdgeはそのようなカスタムAPIの一つとして「edgeMarketingPagePrivate」を実装している。このAPIは「bing.com」「microsoft.com」「msn.com」などのMicrosoftの管理下にあるWebサイトからアクセスできる。このAPIには「installTheme」と呼ばれるメソッドが存在し、ユーザーの同意なしにテーマを切り替える機能を提供する。このメソッドはテーマと拡張機能を区別しないため、IDを差し替えるだけで同意なしに任意の拡張機能をインストールすることができる。

特権の取得

この機能を使用するにはMicrosoftの管理下にあるドメインからAPIを呼び出す必要がある。そのため、通常は悪用することができない。この障壁を突破するには、クロスサイトスクリプティング(XSS: Cross-Site Scripting)などによる攻撃手法が考えられるが、Mediumはより実現性の高い拡張機能をインストールさせる攻撃手法を解説している。

Mediumの手法では何かしらの拡張機能を正規の手続きに則って配布し、ユーザーがbing.comなどの特定サイトにアクセスした際にこの拡張機能から「installTheme」を呼び出して悪意のある拡張機能をユーザーの同意なしにインストールする。攻撃者は拡張機能を事前に用意してユーザーにインストールさせる必要があるものの、特権を必要としないため実現性は高いとみられている。

対策

Microsoftは「installTheme」メソッドからテーマのみをインストールできるようにすることで問題を解決した。そのため、修正後も拡張機能などからAPIの呼び出しは可能とされる。MediumはAPIから追加の問題は見つかっていないとしつつ、誰でも非公開APIにアクセスできる状況はリスクになるとしてMicrosoftにより強力な対策を求めている。Microsoft Edgeのユーザーはこの脆弱性を回避するため、最新バージョンにアップデートすることが推奨されている。