FortiGuard Labs 脅威リサーチ

内部関係者を狙う新たな攻撃「Zegost」の内側に迫る

投稿者 FortiGuard SE Team | 2019年8月6日
攻撃者に関するプレイブック(Adversary Playbook):FortiGuard SEチームは、サイバー脅威アライアンス(Cyber Threat Alliance: CTA)の任務の一環として、ハッカーグループ「Yet Another Panda」に関するプレイブック(英語)を新たに発表します。CTAのメンバーが作成した本プレイブックシリーズの詳細については、Cyber Threat Alliance Playbook Whitepaper(サイバー脅威アライアンスのプレイブックに関するホワイトペーパー:英語)をご覧ください。

FortiGuard SEグループは、最近確認されている情報窃盗マルウェア「Zegost」(別名「Zusy/Kris」)が含まれるスピアフィッシングメール攻撃を発見しました。今回のメールによる攻撃は、必ずしも注目すべき脅威、あるいは新興の脅威だとはいえませんが、標的となった被害者が中国の政府機関であり、主に国家の経済、人口、その他さまざまな指標の統計データを記録管理していたため、本ブログで取り上げることにしました。

興味深いことに、Zegost攻撃はこれまで中国のサイバー犯罪者によって行われていました。これは、世界各地でのさまざまな攻撃キャンペーンで確認されている事実です。Zegostの背後にいる攻撃者が、中国の政府機関を主な標的としている理由は、過去の行動からも判明できていません。しかし、情報を盗むというこのマルウェアの性質どおり、少なくとも何らかのインテリジェンスを収集していたと推測することができます。

概要

マルウェア「Zegost」は、2011年頃からその活動が確認されています。当時から何度も修正や更新が重ねられており、そうした機能アップデートもすべて詳しく確認されています。また、Zegostの背後にいる攻撃者は執拗かつ狡猾であることが知られており、さまざまなエクスプロイトを利用して、狙いを定めた被害者とのコネクションを築き、維持します。

この例にあるような複数のエクスプロイトを利用できる能力に、この攻撃者の狡猾さを見ることができます。最も顕著な例は、2015年に発生した、警察や政府機関向けにツールを販売している、営利目的で倫理観に欠けるイタリアの情報技術企業であるHacking Teamが使用していた、エクスプロイト文書の漏洩です。その他には、Microsoft PowerPointに対して使われた斬新な攻撃法でもZegost攻撃者の狡猾さを見ることができます。この攻撃では、感染されたPowerPointファイルが開かれると、「読み込み中。お待ちください。」という内容のハイパーテキストメッセージが表示されます。このメッセージ上をマウスオーバーすると、PowerShellを介してZegostマルウェアのペイロードを送り込むための一連の感染フローがトリガーされます。

概要

マルウェア「Zegost」は、2011年頃からその活動が確認されています。当時から何度も修正や更新が重ねられており、そうした機能アップデートもすべて詳しく確認されています。また、Zegostの背後にいる攻撃者は執拗かつ狡猾であることが知られており、さまざまなエクスプロイトを利用して、狙いを定めた被害者とのコネクションを築き、維持します。

この例にあるような複数のエクスプロイトを利用できる能力に、この攻撃者の狡猾さを見ることができます。最も顕著な例は、2015年に発生した、警察や政府機関向けにツールを販売している、営利目的で倫理観に欠けるイタリアの情報技術企業であるHacking Teamが使用していた、エクスプロイト文書の漏洩です。その他には、Microsoft PowerPointに対して使われた斬新な攻撃法でもZegost攻撃者の狡猾さを見ることができます。この攻撃では、感染されたPowerPointファイルが開かれると、「読み込み中。お待ちください。」という内容のハイパーテキストメッセージが表示されます。このメッセージ上をマウスオーバーすると、PowerShellを介してZegostマルウェアのペイロードを送り込むための一連の感染フローがトリガーされます。

技術的詳細

最新のZegost攻撃は、添付ファイル付のシンプルなEメールから始まります。
[4940ABAF3A3975900C64F9476606773513B91B02D7ED0ACCF879EC64002DDD71].

「視聴するには、Web動画再生用プラグインをダウンロードしてください」という内容のメッセージが記載されています。

図1. 被害者に送られた不正なスパムメール

データ収集

Zegostの主な目的は、情報の窃盗や抽出です。以下のプロセスや機能を使って、データを収集します。

  • 標的マシンのOSバージョンおよびプロセッサの品番とスペックを特定することから始まります。
  • 次に、以下のプロセスが実行されているかを確認し、実行中のプロセスのリストをC2サーバーに送ります。
     
    360tray.exe, 360sd.exe, avp.exe, KvMonXP.exe, RavMonD.exe, Mcshield.exe, egui.exe, NOD32, kxetray.exe, avcenter.exe, ashDisp.exe, rtvscan.exe, ksafe.exe, QQPCRTP.exe, K7TSecurity.exe, QQ.exe, QQ, knsdtray.exe, TMBMSRV.exe, Miner.exe, AYAgent.exe, patray.exe, V3Svc.exe, QUHLPSVC.EXE, QUICK HEAL, mssecess.exe, S.exe, 1433.exe, DUB.exe, ServUDaemon.exe, BaiduSdSvc.exe, vmtoolsd.exe, usysdiag.exe

    注:「mssecess.exe」プロセスについて、Microsoft Security Essentialsのプロセスが「msseces.exe」であることから、マルウェア開発者の入力ミスである可能性があります。
     
  • 接続状態 - 実行中のコネクションを確認し、C2サーバーにそのリストを送ります。
    INTERNET_CONNECTION_MODEM, INTERNET_CONNECTION_LAN, INTERNET_CONNECTION_PROXY, INTERNET_CONNECTION_MODEM_BUSY

  • RDPポート番号:この情報を取得し、C2サーバーに送ります。
  • QQログイン番号:この情報を取得し、C2サーバーに送ります。
  • キーストロークレコーダー:この亜種はキーストロークを記録し、そのログを以下の形式に変換して %CSIDL_SYSTEM%\MODIf.html に保存し、この情報をC2サーバーに送ります。
     
    [Title:] window title
    [Time:] year-month-date hour:min:sec
    [Content:] pressed keys including special keys like SHIFT, INSERT, F1-12 keys, etc.

注:上記の手順で取得したすべての情報が、C2サーバーに送られます。

  • hxxp://lu1164224557.oicp.net:45450
  • hxxp://212951jh19.iok.la:9988

検知回避

Zegostは、気付かれずに潜伏するためアプリケーション、セキュリティ、システムのイベントログを消去する機能を備えています。このようなクリーンアップは、一般的なマルウェアには見られない特徴です。マルウェアの作成者が極めて用心深く、攻撃キャンペーン中に検知から確実に逃れたい場合に限り、この機能が確認されています。またZegostは、受動的に情報を読み込むだけではなく、プロセスを起動できる点も、他の多くの情報窃盗攻撃と異なります。

Zegostには、以下のステルス機能が備えられています。

図2. Zegostに備えられたプロセスオプション一覧

Zegostのプロセスは、表示または非表示どちらのウィンドウでも起動できます。このような機能性は、別のコードパスでダウンロードされた実行可能ファイルにも適用できます。

Zegostは、執拗にも2つのメソッドを使っています。これは、通常のマルウェアにはない冗長的なシステムです。1つはサービスを自動的に起動させるメソッドで、もう1つはレジストリ内のRUNキーを使って起動させます。ランタイム時のあらゆる衝突を回避するために、常にどちらか一方のバージョンしか実行されないように、ミューテックスを作成してチェックしています。

COMプログラミング

もちろん、長期的に存続している他の有名なマルウェアと同様、Zegostも数年かけて進化しています。たとえば、COMプログラミングに対応するためのアップデートが行われたことがありました。他のZegost特有の戦略と同様、マルウェアでCOMに対応することも一般的な手法ではありません。

Zegostの主な目的は情報を盗むことであるため、意図した標的を偵察する機能も備えられています。その1つは、デバイス搭載のWebカメラを使ってビデオキャプチャする方法です。

図3. DirectShowのビデオキャプチャ指示

上の図のとおり、ビデオキャプチャを目的として感染されたマシンを列挙するため、DirectShowキャプチャフィルターが使われています。ところが、このサンプルは別の目的にもCOMを使用しています。

図4. COMで壁紙情報を取得している様子

分析の過程で、我々はCOMを使って壁紙情報も取得していることを確認しましたが、当初はその理由が分かりませんでした。

図5. 標的環境の具体的な場所とハッシュ値をチェックしている様子

さらに分析した結果、このマルウェアは特定の壁紙とそのディレクトリのハッシュ値に加え、ある空ファイルのハッシュ値を取得するために、さらなるチェックを行っていることが分かりました。その後、この壁紙がC:\Users\test\pictures\maldun_background.jpgに送られること、また[21949bd7e0eff44e6a34157f84969125] というMD5のハッシュ値が存在することを確認します。調査の結果、この壁紙はMaldun(https://www.maldun.com)という正規のオンラインサンドボックスが所有していることが分かりました。

また、MD5のハッシュ値が [d41d8cd98f00b204e9800998ecf8427e] であるか、さらにこのハッシュ値が空の文字列またはファイルであるかを確認します。

上の図に示されるJPGファイルの一覧は、Zegostがチェックした他の壁紙ファイルです。そのうち2つは、別のマルウェア実行用のオンラインサンドボックスであるThreatbook(https://threatbook.cn)が所有していました。Zegost攻撃の中で、こうしたサンドボックス回避手法が確認されたのは初めてのことではありませんが、初期のZegost亜種ではこのような手法は備えられていませんでした。

システムチェック

Zegostのシステムチェック機能は、さらに巧妙な仕組みになっていました。

図6. 実行中のさまざまなプロセスをチェックして、インターネット接続を確認している様子

Zegostは、感染したマシンがインターネットに接続しているかどうか確認するために、正規のQQサイトへのアクセスを試行させます。また、このマルウェアの作成者はSandboxie環境をチェックすることも忘れていません。具体的には、SandboxieRpcSs.exe、SandboxieDcomLaunch.exe、またはAtoolClient.exeというプロセスとなります。

また、興味深いことに、この脅威は単純にループされており、2019年2月14日まで実行されないように設定されていることも判明しました。現時点において、この日付はバレンタインデーだということ以外その重要性は不明で、このタイミングが気になります。たとえば、VirusTotalで確認できたサンプルは前日の2月13日にコンパイルされているようです。気になる所見ですが、その重要性については分かっていません。

図7. 発見後、実行日が2019年2月13日となっていたサンプル

ご覧のとおり、12年近く前に原種が誕生してからZegost/Zusy/Krisに非常に多くの機能が追加されたことは間違いありません。

 

攻撃の全貌

このスピアフィッシング攻撃の発見時点や、この調査の初期段階では、これが単発的な攻撃であるかどうかに注目していました。しかし、分析の結果、発見した時点で既に進行過程にあった新興の攻撃(図7を参照)であることが判明しました。

これまで、Zegostをホストするインフラストラクチャは、主に中国の拠点へと移管されてきました。しかし、この最新の攻撃を調査した結果、シンガポール、台湾、アメリカなど、中国以外の場所を拠点とするダイナミックDNS(DDSN)配下のサブドメインが、コマンド&コントロールとして複数機能していることが明らかになりました。調査の過程で、過去のZegost攻撃(2013年頃までの初期の亜種)にも、これと全く同じDNSドメイン配下のサブドメインが関わっていたことが確認されています。

ダイナミックDNSの仕組み上、動的IPアドレスでホストされるWebサイトは、あるドメイン(通常は、訪問者のマシンが移動先IPアドレスを把握するためのサブドメイン)に紐付された現在のIPアドレスをダイナミックDNSツールに自動入力することが可能です。

たとえば、今日は以下のようなIPアドレスかもしれません。

attackingsubdomain.DDNSdomainservice.com
192.168.2.1

これが、48時間後(または、48時間以内)には、以下のようなIPアドレスに変化する可能性があります。

attackingsubdomain.DDNSdomainservice.com
192.168.2.2

これが、DDNSソフトウェア内の記録を自動更新し、ルートレベルでドメインのDNSレコードを更新します。

さらに、データベースをクエリしたところ、Zegost攻撃者が、新規のインフラストラクチャに加えて過去の攻撃で使用したインフラストラクチャ(既知のWebホストとダイナミックDNS配下のサブドメイン)を使用するだけでなく、それらを共有していることも確認しました(2つのドメインが同じIPアドレスを共有していることが確認されています)。以下のセクションでは、今回のZegost攻撃やその攻撃者が使用している大規模なインフラストラクチャの所見をまとめて説明します。

 

世界的なコネクション

*.3322.org

調査の中で、文字や数字を分かりやすいパターンで組み合わせたセカンドレベルドメイン(例:3322.org/f3322.net)や、英数字をさまざまな方法で、文字通り無意味に組み合わせたように見えるものの、プロの目にはパターンを確認できるセカンドレベルドメインなど、独特な命名法に倣った、注目すべきセカンドレベルドメインにコールバックしていたネットワークIoC(侵害指標)を複数発見しました。

その例としては、フォーティネットの分析で、中国でホストされるダイナミックDNSドメイン「3322.org」配下のセカンドレベルドメインにさまざまなコールバックが行われていることが確認されています。調査の過程で、renhuanxi.3322.orgは、あるZegostペイロードのコマンド&コントロールであることを確認しました。しかし、本ブログを書いている時点で、このサブドメイン「renhuanxi.3322.org」は、アメリカのISPがホストするIPアドレス [205.209.176[.]222] と、中国のISPがホストするIPアドレス [223.111.145[.]149] にリゾルブされます。

必ずしも、このアメリカ拠点のISPが不正行為を行っているとは限りませんが、3322.org配下のセカンドレベルドメインには芳しくない歴史があります。これは、2012年にマイクロソフトが実施した、大規模なシンクホールプロジェクトでも有名なDDNSです。このプロジェクトでは、中国発祥のDDoSボットネット「Nitol」を停止させるため、大量のサブドメインに対するシンクホールチェックが行われました。この調査から、既知のマルウェア種のサンプル500個に加え、7万件もの途方もないサブドメインが3322.orgの配下にあることが判明しました。フォーティネットがさらに分析を行った結果、正にこのドメイン配下のサブドメイン「renhuanxi.3322.org」を使用している2013年版の旧Zegost攻撃を発見しました([8213cc4c79d1d79399843f0054cce8bb27f916e381de7c0f465b3def807cc0d8])。

 

*.OICP.net

OICP.net も、DDNS関連のイタチごっこが発生しているドメインです。OICP.netは、別の中国系DDNSプロバイダーのドメインであり、複数のサブドメインを介してさまざまなマルウェア攻撃を実行していることが確認されています。このドメイン配下のサブドメインを使った不正な活動は、2012年頃から、不正なAndroid APK、バックドア、RAT(モバイル版とデスクトップ版)、不正なフィッシング、マルスパム攻撃をはじめとする多数の脅威で確認されています。

今回発見された最新の攻撃で使われているサブドメイン([lu1164224557[.]oicp.net])は、米国を拠点とするホスティングサービスプロバイダーのIPアドレス [174.128.255[.]245] および [174.128.255[.]254] を使用していることが確認されました。

興味深いことに、OICP.net(および、その他のあらゆるDDNSドメイン名)には、一度で割り当てられるIPアドレスの数に対して、数百、数千種類ものサブドメインが存在する可能性があることも認識しているため、米国との共通のつながりを文書化しました。問題となっていたWebホストは、この特定のIPアドレス(また、その他さまざまなIPアドレスも)に関して確認された数百件のサブドメインをホストしていました。このIPアドレスには、パッシブDNSを使用することで数年かけて数百種類のさまざまなサブドメインが割り当てられていることが確認されています。その中には、以下の活動で知られているドメインも含まれています(以下のドメインのみに限定されてはいない点に留意してください)。

  • Vicp.net(東南アジアで発生したマルウェア「Naikon」攻撃)
  • Gicp.net(東南アジアで集中的に確認されたAndroidマルウェア「Henbox」と「Deep Panda/ShellCrew/Maudi/PoisonIvy」)
  • Xicp.net(チベットのMacユーザーを狙うマルウェア「MacControl」と、2009年頃に確認されたその他のチベット民族関連の攻撃)

しかし、このようなホスティングサービスを提供している(少なくとも米国内の)ISPには、国内法や国際法への違反が疑われる活動があっても、自社ネットワークを監視および規制することが義務付けられていないため、これらの攻撃の意図を把握することはできません。しかし、この特定のネットブロックから直接使われているIPアドレスはすべて今回の攻撃者に帰属しており、数年間に渡ってこれらの各種不正ダイナミックDNSドメインが使用されていることから、問題のWebホストが自社ネットワークから発生している不正活動を(最低でも)認識していないとは考えられません。

さらに、2015年のDeep Panda攻撃でも、まさにこのインフラストラクチャとISPを利用していたことが確認されました。この特定のWebホストが、既知の不正な攻撃(今も続くZegost攻撃を含む)をホストしていることに加え、攻撃者に好まれている理由は完全には把握できていませんが、これは明白な事実です。

 

*.Heikc.com

4文字という型を破り、命名されたサブドメイン「j.heikc.com」(150.109.120.238)(シンガポール)が、2013年頃からさまざまなマルウェア攻撃で使われていることが確認されています。しかし、過去の攻撃数は限られており、他の不正攻撃と比べて大きな違いも見当たりません。過去の分析から、このドメインはサブドメイン「jj.heikc.com」をマルウェアのコマンド&コントロールとして、2015年頃に発生していた旧Zegost攻撃と関係があることが判明しています。しかし、記録ではこのドメイン配下のサブドメイン数が非常に少ないため、DDNSサービスではないと思われます。

図8. Zegostのグローバルなコマンド&コントロール(件数)

*.Iok.la/*.f3322.net

このIok.laも中国系のDDNSサービスです。現在までに、最近発見された不正なAndroidマルウェア攻撃やダウンローダーも含め、このドメイン配下に220種類以上のサブドメインが存在することが確認されています。またZegostは、[116.255.212[.]174](中国)にあるサブドメイン「212951jh19.iok.la」にコールバックしていることが確認されました。

IPアドレス [125.224.24[.]64](台湾)を212951jh19.iok.laと共有し、Sakula/ShellCrew攻撃などのさまざまなマルウェア攻撃で利用されている、miilk.f3322.netという別のDDNSプロバイダーが存在するため、このDDNSサービスも本リストに含めました。

図9. Zegostのグローバルなコマンド&コントロール(地域)

まとめ

ダイナミックDNSドメイン配下のサブドメインやIPアドレスは全く同じではありませんが、使用されているダイナミックDNSドメインの命名規則や命名法が非常に似ていること、特に極めて大規模なケースにおいて今回の攻撃者が使用するネットブロックが似ていることは、偶然では済まされません(事実、極めて不審だといえます)。このインフラストラクチャを使用しているネットブロックは、過去の不正なAndroid APK、バックドア、DDoSボットネット、スピアフィッシングメールをはじめとする、さまざまな攻撃で確認されています。

このインフラストラクチャは、数年前から一貫してさまざまな攻撃に使用されているものの、一切状況が変わっていないため、ISPが法的に得られるセーフハーバー保護を撤廃することが、このしたイタチごっこに対抗できる唯一の抜本的対策かもしれません。それが実現されるまで、攻撃や私欲を肥やすための不正行為は蔓延し続けるでしょう。

MITRE ATT&CKフレームワークの仕様に基づいた分析やマッピングを行ったIoCを含め、フォーティネットの調査で使われたサンプルの詳細については、Yet Another Pandaに関する最新のプレイブック、またはhttps://github.com/fortiguardintel/playbooksをご覧ください。

減災対策

最新のアンチウイルス定義ファイルを実行しているFortinetユーザーは、この最新のZegost攻撃から保護されています。

本レポートで言及したサンプルは、すべて以下のアンチウイルス定義ファイルで対策が講じられています。

W32/Kryptik.GHUE!tr
W32/Kryptik.FHSE!tr
W32/Farfli.AFJ

また、今回の最新の攻撃で特定されたネットワークIoCは、FortiGuard Webフィルタリングサービスによって既にブラックリストに登録されています。

FortiGuard LabsおよびFortiGuardセキュリティサービスのポートフォリオの詳細については、こちらをご覧ください。 FortiGuard Labsでは、脅威インテリジェンスブリーフ(英語)を毎週お届けしています。ぜひご購読ください。

自社の脆弱性を知る: 自社のネットワークセキュリティはどのような状態でしょうか。Fortinet Cyber Threat Assessment(フォーティネットのサイバー脅威評価:英語)では、自社のセキュリティと脅威防御、ユーザーの生産性、ネットワーク利用とパフォーマンスの状況を詳しく知ることができます。

セキュリティ監査とベストプラクティスを提供するFortiGuard セキュリティレーティングサービスについては、こちら(英語)をご参照ください。

注:MITRE ATT&CK™は、実世界の調査に基づき、攻撃者の戦術や手法について、世界中からアクセス可能な情報を提供するナレッジベースです。ATT&CKのナレッジベースは、民間、政府、サイバーセキュリティ製品、サイバーコミュニティが使用する脅威モデルや方法論の開発基盤として活用されています。