Mac向けマルウェア「XCSSET」、正規ソフトを悪用しUXSS攻撃を実行

トレンドマイクロでは、Xcodeの開発者向けプロジェクト関連で、異常な感染を確認しました。さらに調査を進めたところ、特定の開発者のXcodeプロジェクト全体にソースマルウェアが含まれており、不正ペイロードの取得につながることが判明しました。本記事では、Mac向けマルウェア「XCSSET」に関する調査結果を要約します。この攻撃の詳細については、こちらの技術的詳細から確認可能です。トレンドマイクロでは、最初に侵入するマルウェアを「TrojanSpy.MacOS.XCSSET.A」として、そしてコマンド&コントロール(C&C)に関連するファイルを「Backdoor.MacOS.XCSSET.A」として検出しました。

図1:ソースマルウェアを含むXcodeプロジェクトのサンプルとそのコンテンツの例

■Xcodeのプロジェクトファイルを汚染する手口

XcodeはApple社のmacOSおよびiOS用アプリケーションの統合開発環境ですが、この事例では、プロジェクトのビルド時に実行されるように、ローカルのXcodeプロジェクト内に不正コードが挿入されます。このことは特に、Xcode開発者にとって脅威となるでしょう。トレンドマイクロでは、GitHubでプロジェクトを共有している開発者に関して調査しましたが、この脅威の影響は想定よりも深刻と見ています。というのも、独自のプロジェクトの依存関係としてこれらのリポジトリを使用する開発者たちの間で、サプライチェーン攻撃のような影響をもたらすためです。トレンドマイクロではまた、VirusTotalなどの情報元も利用しこの脅威を特定するに至りましたが、VirusTotalから得た情報からもこの脅威は広範囲に及ぶものであると推測されます。

この脅威はこの脅威は主に、マルウェアが作成したXcodeプロジェクトおよび不正に改変されたアプリケーションを介して拡散します。しかしながらまず、この脅威が対象のプロジェクト内にいかにして侵入を試みたのかについては未だ明らかになっていません。おそらくは、Xcodeプロジェクトは主に開発者によって使用されますが、対象のプロジェクトはビルド時に不正コードを実行するように改変されています。これにより、最終的にメインのXCSSETマルウェアが作成されると、影響を受けるコンピュータ内で実行されます。感染したユーザは、認証情報、アカウントなど、その他の重要なデータが窃取される可能性もあります。

■複数の正規ソフトを悪用し不正活動を実行

そしてこの調査の上で最も注目すべき部分としては、複数の正規ソフトの動作を巧みに悪用し不正活動を実行していることがあります。ひとつは、データを不正アクセスから保護する機能である「Data Vault」の動作を悪用し、Cookieを窃取する活動です。もう一方は、Safariの開発バージョンを悪用します。

影響を受けるコンピュータ内への侵入後、XCSSETは以下の動作を実行可能です。

  • 既存のSafariやその他のインストールされているブラウザを悪用し、ユーザーデータを窃取する。特に、
    • 「Data Vault」の動作を悪用して、SafariのCookieを読み取りダンプする
    • Safariの開発版を悪用して、ユニバーサルクロスサイトスクリプティング(UXSS)攻撃を介しJavaScriptバックドアをWebサイトに挿入する
  • 「Evernote」、「Notes」、「Skype」、「Telegram」、「QQ」及び「WeChat」アプリの利用者から情報を窃取する
  • ユーザが表示している現在の画面のスクリーンショットを撮る
  • 影響を受けるコンピュータから攻撃者が指定したサーバへファイルをアップロードする
  • サーバがコマンドを送信した場合、ファイルを暗号化して身代金要求文書を表示する

UXSS攻撃は、理論的には、ユーザのブラウジング体験ほぼすべての部分を、JavaScriptが挿入された任意のコードとして変更することが可能です。これらの変更には、以下を含みます。

  • 表示されるWebサイトを改変する
  • ビットコイン/暗号資産アドレスの改変または置き換え
  • amoCRM、Apple ID、Google、Paypal、SIPMarket、およびYandexの認証情報を窃取する
  • Apple Storeからクレジットカード情報を窃取する
  • ユーザによるパスワード変更をブロックするだけでなく、新しく変更されたパスワードを窃取する
  • 特定のアクセスしたサイトのスクリーンショットを取得する
■更なる調査から判明した活動

トレンドマイクロによる、継続したXCSSETに関する調査により、更に以下の2点が明らかになりました。

  1. Safari上で確認された挙動と同じように、他の種類のブラウザでもデバッグモードを利用してUXSSを実行する
  2. 未実装だが、潜在的ランサムウェア機能を備えている
  • Safari以外のブラウザの悪用

XCSSETは主にSafariをターゲットとしていますが、他の種類のブラウザを対象とするモジュールも含まれています。基本的な動作はどのブラウザも類似しており、マルウェアはブラウザをデバッグモード、あるいは開発者モードで実行できるようにしてブラウザを乗っ取り、ユニバーサルクロスサイトスクリプティング(UXSS)攻撃を実行します。

以下は、Safari以外の影響を受けるブラウザ一覧です。

  • Brave
  • Google Chrome
  • Microsoft Edge
  • Mozilla Firefox
  • Opera
  • Qihoo 360 Browser
  • Yandex Browser

XCSSETが狙うプラットフォームはMacに限定されていますが、同様の基本的な挙動はSafari以外のブラウザにおいても確認されています。つまり、Windowsが攻撃された場合でも、このXCSSETのブラウザを利用する方法が応用できる可能性があります。

XCSSETの攻撃から保護する最善の対策は、何らかの方法でデバッグモードへのアクセスを制限することです。または、リモートデバッガがブラウザに接続した場合、通知を受け取るようにすることができます。上述のブラウザのうちFirefoxは、デフォルト設定でリモートデバッグ要求をユーザへ通知します。

図2:Firefoxのリモートデバッグ要求通知の例

  • ランサムウェア機能

XCSSETのコマンドアンドコントロール(C&C)サーバを調査する過程で、XCSSETが追加でロードできるモジュールが見つかりました。各モジュールの詳細についてはレポートに記載されていますが、中でも注目すべきは、ランサムウェアのモジュールがあったことです。

ただし、このモジュールはロードしても機能しません。実際に暗号化を実行するコードがコメントアウトされているおり、現在のところこのモジュールはサイバー犯罪者により無効化されているものと考えられます。

図3:呼び出されるランサムウェアモジュール

このように無効化されている理由は不明です。コード分析からは、デスクトップ、ドキュメントフォルダ、およびダウンロードフォルダ内にある500 MB未満のファイルすべてを暗号化する機能を持つことがわかります。脅迫状(ランサムノート)によると、身代金は0.5 BTC、つまり約56万円(2020年10月現在)です。

Xcodeプロジェクトを汚染するXCSSETの拡散手法は、巧妙であるとしか言いようがありません。影響を受ける開発者は気づかないうちに、マルウェアを侵害されたXcodeプロジェクトとして対象のユーザへと拡散してしまいます。ハッシュの確認などの拡散されたファイルを検証するやり方は、開発者が不正ファイルを拡散してしまっていることに気付かないため、役に立ちません。現在は無効になっているとはいえ、ランサムウェア活動のモジュールの存在など、より凶悪化する可能性も見せており、注意が必要です。

本記事で紹介した攻撃についてさらに詳しく知りたい方は、以下のテクニカルブリーフレポート(英語)もご一読ください:

・「The XCSSET Malware: Inserts Malicious Code Into Xcode Projects, Performs UXSS Backdoor Planting in Safari, and Leverages Two Zero day Exploits

・「XCSSET Update: Abuse of Browser Debug Modes, Findings from the C2 Server, and an Inactive Ransomware Modul

■トレンドマイクロの対策

XCSSETによる脅威からシステムを保護するために、ユーザは、正規のマーケットからのみアプリをダウンロードしてください。

個人利用者は、包括的なセキュリティを提供する「ウイルスバスター クラウド」を、またMacのみをご利用の場合は「ウイルスバスター for Mac」などの多層セキュリティソリューションをご検討いただけます。

法人利用者は、XGenセキュリティを活用したUser Protectionソリューション製品をご利用できます。User Protectionソリューションは、ゲートウェイからエンドポイントに至るまで最大限の保護を提供し、ユーザへの影響を最小限に抑えます。

侵入の痕跡(Indicators of Compromise IoCs

侵入の痕跡(Indicators of Compromise、IoCs)は、こちらを参照してください。

参考記事:

翻訳: 下舘 紗耶加(Core Technology Marketing, Trend Micro™ Research)

• 「XCSSET Update: Browser Debug Modes, Inactive Ransomware
By Mac Threat Response and Mobile Research Team

翻訳: 室賀 美和(Core Technology Marketing, Trend Micro™ Research)

記事構成:岡本 勝之(セキュリティエバンジェリスト)