キヤノンMJ/サイバーセキュリティ情報局

日本の政治団体を標的にしたスピアフィッシングキャンペーン「LiberalFace作戦」を分析

  • この記事をはてなブックマークに追加
  • 本文印刷

本記事はキヤノンマーケティングジャパンが提供する「サイバーセキュリティ情報局」に掲載された「日本の政治団体を標的にした、APTグループ「MirrorFace」のスピアフィッシングキャンペーンとは?」を再編集したものです。

 ESET社が追跡しているAPTグループ「MirrorFace」が、2022年7月の日本の参議院選挙までの数週間にわたってスピアフィッシングキャンペーンを実行していたことが明らかになりました。ESET社は、このキャンペーンを「LiberalFace作戦」と命名しました。このキャンペーンは、日本の政治団体を標的にしており、ESET社の調査から、特定の政党の党会員がこのキャンペーンの重要な標的になっていたことがわかりました。ESET Researchは、12月上旬に開催されたAVAR 2022 Conferenceで、このキャンペーンとその背後にいるAPTグループに関する詳細を公開しました。

本ブログの要点:

・2022年6月末、MirrorFaceは日本の政治団体を標的としたキャンペーンを開始しました。ESET社ではこのキャンペーンを「LiberalFace作戦」と命名しました。
・MirrorFaceが最も多く利用しているバックドアである「LODEINFO」が含まれるスピアフィッシングメールが標的に送信されました。
・LODEINFOは、別のマルウェアを配信し、標的となったユーザーの認証情報を窃取し、そのユーザーの文書やメールを盗み出すために使用されていました。
・これまで検出されたことのない認証情報を窃取するツールがLiberalFace作戦で使用されました。ESET社はこのツールをMirrorStealerと命名しました。
・ESET社は、セキュリティが侵害された後の操作を分析し、同グループが手動または半手動の方法でさまざまな操作を実行している可能性があることを特定しました。
・ESET社は、AVAR 2022 Conferenceで本キャンペーンの詳細を公開しました。

 MirrorFaceは中国語を使用するサイバー攻撃者で、日本に拠点を置く企業や組織を標的にしています。この攻撃グループは、APT10との関連性が疑われていますが、ESET社は既知のAPTグループとの関係を特定できていません。そのため、このグループをMirrorFaceと命名し、個別のグループとして追跡しています。特に、MirrorFaceのみが使用している「LODEINFO」マルウェアは、日本国内の標的に限定して使用されており、メディア、防衛関連企業、シンクタンク、外交機関、学術機関などを標的としていることが報告されています。MirrorFaceは、諜報活動や同グループが関心を持っているファイルを窃取することを目的にしています。

・以下の指標から、LiberalFace作戦がMirrorFaceによって実施されているとESET社は判断しています。
・ESET社のこれまでの調査では、LODEINFOマルウェアはMirrorFaceのみが使用しています。
・LiberalFace作戦の標的は、MirrorFaceの過去の標的と一致しています。
・第2段階で使用されるLODEINFOマルウェアの検体は、MirrorFaceのインフラの一部としてESET社が追跡しているC&Cサーバーにアクセスしていました。

 LiberalFace作戦で送信されたスピアフィッシングメールの中には、日本の特定政党の広報部門からの公式な通知を装っており、参議院選挙に関する依頼が記載され、著名な政治家の代理で送信されたように偽装されたものがありました。すべてのスピアフィッシングメールに悪意のある添付ファイルが含まれており、マシンが侵害されLODEINFOが展開されます。

 さらに、MirrorFaceは、これまで検出されたことのない新しいマルウェアを使用して、標的の認証情報を盗んでいました。ESET社はこのマルウェアをMirrorStealerと命名しました。このマルウェアが検出され公開されたのは、今回が初めてだとESET社は考えています。

 このブログでは、LODEINFOに送信されたC&Cコマンドなど、セキュリティが侵害された後に確認された行動について解説します。攻撃の対象となったマシンで実行された特定の動作から、MirrorFaceのオペレーターは手動または半手動でLODEINFOマルウェアのコマンドを実行していたと考えられます。

初期アクセス

 MirrorFaceは2022年6月29日に攻撃を開始し、悪意のあるファイルを添付したスピアフィッシングメールを標的に配信しました。このメールの件名は 「<一部編集済み>SNS用動画 拡散のお願い」でした。図1と図2にメールの内容を示します。

図1.メールの原文

図2.翻訳版

 MirrorFaceは、日本のある政党の広報部門を装い、政党のPRをさらに強化し、参議院での勝利を勝ち取るために、添付の動画を各自のソーシャルメディア(SNS:Social Network Service)から配信するようにメールの受信者に要請しています。さらに、このメールでは、ビデオを公開するための戦略についても明確に指示しています。

 2022年7月10日に参議院選挙が実施されていることから、このメールはMirrorFaceが政治団体を攻撃しようとしていたことをが明確になっています。また、メールの具体的な内容から、特定の政党の党員が標的にされたことがわかります。

 MirrorFaceは、このキャンペーンで別のスピアフィッシングメールも使用しており、添付ファイルのタイトルは 【参考】220628<編集済>発・<編集済>選挙管理委員会宛文書(添書分).exeになっていました。添付されていたおとり文書(図3に表示)では、参議院選挙についても言及しています。

図3.標的に表示するおとり文書

 いずれの場合も、メールには、 <編集済>SNS用動画 拡散のお願い.exeおよび【参考】220628<編集済>発・<編集済>選挙管理委員会宛文書(添書分).exeというファイル名が付けられた自己展開型のWinRARアーカイブファイルが添付されていました。

 これらのEXEは、アーカイブされているコンテンツを%TEMP% フォルダーに展開します。具体的には、次の4つのファイルが展開されます。

・K7SysMon.exe。これは、K7 Computing Pvt Ltd が開発した正規のアプリケーションであり、DLLの検索順序をハイジャックする脆弱性が存在します。
・K7SysMn1.dll。悪意のあるローダー。
・K7SysMon.Exe.db。暗号化されたLODEINFOマルウェア
・おとり文書

 そして、標的を欺くために、おとりの文書を開き、正規のファイルのように見せかけています。最後のステップとして、K7SysMon.exeが実行され、一緒にドロップされた悪意のあるローダーK7SysMn1.dllがロードされます。最後にローダーは K7SysMon.Exe.dbのコンテンツを読み取り、復号化してから実行します。カスペルスキーもこの手法を確認しており、同社のレポートにも記載されています。

ツールセット

 このセクションでは、「LiberalFace作戦」でMirrorFaceが使用したマルウェアについて説明します。

LODEINFO

 LODEINFOは、MirrorFaceが継続的に開発しているバックドアです。JPCERTは、2019年12月頃に出現したLODEINFOの最初のバージョン(v0.1.2)について報告しており、スクリーンショットのキャプチャ、キーロギング、プロセスの強制終了、ファイルの外部への送信、追加のファイルおよびコマンドの実行などの機能をLODEINFOが搭載していることを報告しています。その後、バージョンアップを重ね、現在に至っています。例えば、ESETが2020年6月に初めて検出したバージョン0.3.8では、定義されたファイルやフォルダーを暗号化するコマンドransomが追加され、ESETが2021年7月に検出したバージョン0.5.6では、オペレーターがレジストリに保存された設定を変更できるコマンドconfigが追加されています。上記のJPCERTの報告以外にも、今年初めにはカスペルスキーがLODEINFOバックドアを詳細に解析した結果を公表しています。

 LiberalFace作戦では、MirrorFaceのオペレーターが、通常のLODEINFOと、ESETがセカンドステージと呼んでいるLODEINFOマルウェアの両方を利用していることが確認されています。セカンドステージのLODEINFOは、全体的な機能から、通常のLODEINFOと区別できます。特に、セカンドステージのLODEINFOでは、実装されているコマンド以外のPEバイナリやシェルコードも受け入れて実行できます。さらに、セカンドステージのLODEINFOはC&Cコマンドのconfigを処理できますが、ransomコマンドに対応する機能が欠落しています。

 最後に、C&Cサーバーから受け取るデータも、通常のLODEINFOとセカンドステージのLODEINFOでは異なります。セカンドステージのLODEINFOでは、C&Cサーバーは実際のデータの前にランダムなWebページのコンテンツを配置します。受信するデータの差異については、 図4、図5、図6を参照してください。セカンドステージのC&Cから受信した各データストリームでは、追加されるコードスニペットが異なっています。

図4.ファーストステージのLODEINFOのC&Cから受信したデータ

図5.セカンドステージのC&Cから受信したデータ

図6.セカンドステージのC&Cから受信した別のデータストリーム

MirrorStealer

 MirrorStealerは、MirrorFaceが内部的には31558_n.dll と命名しているマルウェアであり、認証情報を窃取します。ESET社の知る限り、これはこれまで公開されていないマルウェアです。MirrorStealerは通常、ブラウザーやメールクライアントなどのさまざまなアプリケーションから認証情報を盗み取ります。注意が必要なのは、対象となるアプリケーションのひとつが、現在日本でしか利用できないメールクライアントBecky!であることです。窃取されたすべての認証情報は、%TEMP%\31558.txt に保存されます。MirrorStealerは窃取したデータを外部に送信する機能を実装していないため、外部にデータを送信するためには他のマルウェアを利用します。

セキュリティが侵害された後の活動

 今回の調査では、セキュリティが侵害されたコンピューターで実行されたコマンドの一部を確認することができました。

最初の環境の偵察

 セキュリティが侵害されたマシンでLODEINFOを起動し、C&Cサーバーへの接続に成功すると、MirrorFaceのオペレーターがコマンドの実行を開始しました(図7を参照)。

図7.MirrorFaceオペレーターによるLODEINFOを使用した最初の環境の偵察

 まず、オペレーターはLODEINFOコマンドのひとつであるprintを実行し、侵害したマシンの画面をキャプチャしました。このコマンドが実行された後には、LODEINFOが存在している現在のフォルダー(つまり%TEMP%)のコンテンツを見るために、別のコマンドであるlsが実行されています。このオペレーターは、その直後にLODEINFOを使用してnet viewとnet view /domainを実行し、ネットワーク情報を取得しています。最初のコマンドは、ネットワークに接続されているコンピューターのリストを返し、2番目のコマンドは、利用可能なドメインのリストを返します。

認証情報とブラウザーCookieの窃取

 これらの基本的な情報を収集した後に、このオペレーターは次の段階に移ります(図8を参照)。

図8.認証情報窃取ツールの展開、認証情報およびブラウザーCookieの収集、C&Cサーバーへのデータの送信を行うためにLODEINFOに送信された一連の指示

 このオペレーターは、-memoryサブコマンドを付けて LODEINFOコマンドのsendを実行し、侵害したマシンにMirrorStealerマルウェアを配信しています。サブコマンドの-memoryは、MirrorStealerをメモリ内に保持するようにLODEINFOに指示するために使用され、MirrorStealerバイナリがディスクにドロップされないようにしています。続いて、コマンドmemoryが実行されています。このコマンドは、MirrorStealerを取得し、大量に生成されたcmd.exeプロセスにこのマルウェアを注入して実行するようにLODEINFOに指示しています。

 MirrorStealerが認証情報を収集し、 %temp%\31558.txtに保存すると、このオペレーターはLODEINFOを使用して認証情報を外部に送信しました。

 このオペレーターは、標的となったユーザーのブラウザーCookieにも関心を持っています。しかし、MirrorStealerはこれらのCookieを収集する機能を実装していません。そのため、オペレーターはLODEINFOから手動でCookieを外部に送信していました。このオペレーターはまず、LODEINFOコマンドのdirを使用して、%LocalAppData%\Google\Chrome\User Data\と %LocalAppData%\Microsoft\Edge\User Data\フォルダーのコンテンツを表示しました。次に、特定されたすべてのCookieファイルを%TEMP%フォルダーにコピーしました。次に、LODEINFOコマンドのrecvを使用して、収集したすべてのCookieファイルを外部に送信しました。最後に、オペレーターはコピーしたCookieファイルを%TEMP%フォルダーから削除し、攻撃の痕跡を消し去ろうとしました。

文書やメールの窃取

 このオペレーターは、次の段階で、さまざまな種類の文書や保存されたメールを外部に送信しました(図9を参照)。

図9.重要なファイルを外部に送信するように、LODEINFOに送られた一連の指示

 そのため、オペレーターは最初にLODEINFOを使用して、WinRARアーカイバー(rar.exe)を配信しました。rar.exeを使用して、%USERPROFILE%\と C:\$Recycle.Bin\から2022年1月1日以降に変更された重要なファイルを収集してアーカイブしました。このオペレーターは、拡張子が.doc*、.ppt*、.xls*、.jtd、.eml、.*xps、.pdfのファイルすべてを収集の対象としていました。

 MirrorFaceは、これらの一般的な文書タイプの他にも、.jtdの拡張子のファイルも収集していたことに注意が必要です。この拡張子のファイルは、JustSystemsが開発した日本語ワードプロセッサー一太郎の文章です。

 アーカイブが作成されると、オペレーターはPuTTYスイートからSCP(Secure Copy Protocol)クライアント(pscp.exe)を配信し、このクライアントを使用して作成したRARアーカイブを45.32.13[.]180にあるサーバーに送信しました。このIPアドレスは、過去のMirrorFaceの活動では確認されておらず、ESET社が確認したLODEINFOマルウェアのC&Cサーバーとしても使用されていません。アーカイブを送信した直後に、オペレーターは活動の痕跡を消すために rar.exe、pscp.exe、およびRARアーカイブを削除しています。

セカンドステージのLODEINFOの展開

 最後にESETが観察したのは、セカンドステージのLODEINFOの配信です( 図10を参照)。

図10.セカンドステージのLODEINFOを展開するためにLODEINFOに送信された一連の指示

 オペレーターはJSESPR.dll、 JsSchHlp.exe、 vcruntime140.dllのバイナリを侵害したマシンに配信しています。オリジナルのJsSchHlp.exeは、先に述べた日本語ワードプロセッサーの製造元であるジャストシステム社が署名している正規のアプリケーションです。しかし、MirrorFaceのオペレーターは、マイクロソフト社のデジタル署名検証における既知の問題を悪用し、JsSchHlp.exeのデジタル署名にRC4で暗号化されたデータを追加しています。この問題により、Windowsは改変されたJsSchHlp.exeに 有効な署名が追加されていると見なしてしまいます。

 JsSchHlp.exeは、DLLサイドローディングの影響を受けている可能性もあります。このファイルを実行するときに、攻撃者が仕組んだJSESPR.dllがロードされます(図11を参照)。

図11.セカンドステージのLODEINFOの実行フロー

 JSESPR.dllは、JsSchHlp.exeから追加されたペイロードを読み込み、復号化して実行する悪意のあるローダーです。このペイロードはセカンドステージのLODEINFOです。オペレーターは通常のLODEINFOを使用してセカンドステージのLODEINFOを常駐化させます。特に、オペレーターはreg.exeユーティリティーを実行して、JsSchHlp.exeのパスが保存されているRunレジストリキーにJsSchHlpという値を追加しています。

 しかし、セカンドステージのLODEINFOをC&Cサーバーと正しく通信させることができなかったと考えられます。そのため、セカンドステージのLODEINFOをこのオペレーターがこの後でどのように操作したのかは不明なままです。

注意すべき観察結果

 この調査では、注意すべきいくつかのことが明らかになりました。ひとつは、このオペレーターがLODEINFOでコマンドを実行するときに、いくつかのエラーを発生させたり、タイプミスをしたりしていることです。たとえば、オペレーターはLODEINFOにcmd /c dir "c:\use\"という文字列を送信していますが、正しい文字列はcmd /c dir "c:\users\"であった可能性が高いです。

 これは、オペレーターが手動または半手動でLODEINFOでコマンドを実行していることを示しています。

 また、オペレーターは攻撃の痕跡を消去するためにいくつかのクリーンアップ処理を実行したにもかかわらず、窃取した認証情報が含まれるログである%temp%\31558.txtを削除するのを忘れています。このように、少なくともこの攻撃の痕跡は侵害されたマシンに残っており、オペレーターによるクリーンアップ処理が徹底されていなかったことを示しています。

結論

 MirrorFaceは、日本国内の組織を標的として攻撃を行なっています。LiberalFace作戦では、参議院選挙を目前に控えた政治団体を主要な標的としていました。さらに興味深いことに、MirrorFaceは特定の政党の党員を攻撃の対象としていることがわかりました。

 LiberalFace作戦の調査では、標的となったユーザーから重要なデータを収集して送信するために、追加のマルウェアやツールを展開して利用するなど、MirrorFaceの詳細なTTP(戦術、技術、手順)を明らかにすることができました。また、MirrorFaceのオペレーターには不注意な点があり、攻撃の痕跡を残したり、さまざまなミスを犯していることが判明しています。

IOC(セキュリティ侵害の痕跡)

ファイル

SHA-1 ファイル名 検出 説明
F4691FF3B3ACD15653684F372285CAC36C8D0AEF K7SysMn1.dll Win32/Agent.ACLP LODEINFOローダー。
DB81C8719DDAAE40C8D9B9CA103BBE77BE4FCE6C K7SysMon.Exe.db N/A 暗号化されたLODEINFO。
A8D2BE15085061B753FDEBBDB08D301A034CE1D5 JsSchHlp.exe Win32/Agent.ACLP セキュリティディレクトリに暗号化されたセカンドステージのLODEINFOが追加されたJsSchHlp.exeがあります。
0AB7BB3FF583E50FBF28B288E71D3BB57F9D1395 JSESPR.dll Win32/Agent.ACLP セカンドステージのLODEINFOローダー。
E888A552B00D810B5521002304D4F11BC249D8ED 31558_n.dll Win32/Agent.ACLP MirrorStealer認証情報窃取ツール。

ネットワーク

IP プロバイダー First Seen 詳細
5.8.95[.]174 G-Core Labs S.A. 2022-06-13 LODEINFOのC&Cサーバー。
45.32.13[.]180 AS-CHOOPA 2022-06-29 データを外部に送信するために使用されるサーバー。
103.175.16[.]39 Gigabit Hosting Sdn Bhd 2022-06-13 LODEINFOのC&Cサーバー。
167.179.116[.]56 AS-CHOOPA 2021-10-20 www.ninesmn[.]com、セカンドステージのLODEINFO のC&Cサーバー。
172.105.217[.]233 Linode, LLC 2021-11-14 www.aesorunwe[.]com、セカンドステージのLODEINFOのC&Cサーバー。

MITRE ATT&CKの技術

 この表は、MITRE ATT&CKフレームワークのバージョン12を使用して作成されています。

 なお、このブログでは、LODEINFOの機能について詳しく説明していませんが、これらの機能の情報はすでに他のレポートで公開されているため、次のMITRE ATT&CKの表には、これらの機能に関連するすべての手法が記載されています。

手法 ID 名前 説明
初期アクセス T1566.001 フィッシング:スピアフィッシングの添付ファイル スピアフィッシングメールに悪意のあるWinRAR SFXアーカイブが添付されています。
実行 T1106 ネイティブAPI LODEINFOは、CreateProcessA APIを使用してファイルを実行できます。
T1204.002 ユーザーによる実行:悪意のあるファイル MirrorFaceのオペレーターは、標的のユーザーがメールで送られた悪意のある添付ファイルを開くことを攻撃の前提にしています。
T1559.001 プロセス間通信:コンポーネントオブジェクトモデル(COM) LODEINFOは、コンポーネントオブジェクトモデル(COM)を介してコマンドを実行できます。
常駐化 T1547.001 ブートまたはログオン自動起動:Runレジストリキーやスタートアップフォルダの悪用 LODEINFOは、HKCU Runキーにエントリを追加し、常駐します。
ESETは、MirrorFaceのオペレーターが、セカンドステージのLODEINFOを常駐させるために、HKCU Runキーに手動でエントリを追加していることを確認しています。
防衛機能の回避 T1112 レジストリの変更 LODEINFOは、設定をレジストリに保存できます。
T1055 プロセスインジェクション LODEINFOは、cmd.exeにシェルコードを注入できます。
T1140 ファイルや情報の難読化解除と復号化 LODEINFOローダーは、シングルバイトのXORまたはRC4を使用してペイロードを復号化します。
T1574.002 ハイジャックの実行フロー:DLLサイドローディング MirrorFaceは、悪意のあるライブラリと正規の実行ファイル(例、K7SysMon.exe)をドロップして、LODEINFOをサイドローディングします。
検出 T1082 システム情報の検出 LODEINFOは侵害したマシンの情報を収集します。
T1083 ファイルおよびディレクトリの検出 LODEINFOは、ファイルやディレクトリの一覧を取得できます。
T1057 プロセスの検出 LODEINFOは、実行中のプロセスを一覧表示できます。
T1033 システムオーナー/ユーザーの検出 LODEINFOは、標的となったユーザーの名前を取得できます。
T1614.001 システムの場所の検出:システム言語の検出 LODEINFOは、システムの言語をチェックし、英語を使用するように設定されたマシンで実行されていないことを確認します。
収集 T1560.001 収集したデータのアーカイブ:ユーティリティーを利用したアーカイブ ESETは、MirrorFaceのオペレーターが、収集したデータをRARアーカイブツールを使用してアーカイブしていることを確認しています。
T1114.001 メールの収集:ローカルメールの収集 ESETは、MirrorFaceのオペレーターが、保存されているメールを収集していることを確認しています。
T1056.001 入力情報の取得:キーロギング LODEINFOは、キーロギングを行ないます。
T1113 画面キャプチャー LODEINFOはスクリーンショットを取得できます。
T1005 ローカルシステムのデータ ESETは、MirrorFaceのオペレーターが、重要なデータを収集し、外部に送信していることを確認しています。
C&C(コマンド&コントロール) T1071.001 アプリケーションレイヤープロトコル:ウェブプロトコル LODEINFOは、C&Cサーバーとの通信にHTTPプロトコルを使用します。
T1132.001 データのエンコーディング:標準エンコーディング LODEINFOは、URLセーフのbase64を使用して、C&Cトラフィックをエンコードします。
T1573.001 暗号化されたチャンネル:対称暗号方式 LODEINFOは、C&Cトラフィックの暗号化にAES-256-CBCを使用します。
T1001.001 データの難読化:ジャンクデータ セカンドステージのLODEINFOのC&Cは、送信するデータの前にジャンクデータを配置します。
情報の外部への送信 T1041 C&Cチャネルからの送信 LODEINFOは、C&Cサーバーにファイルを送信できます。
T1071.002 アプリケーションレイヤープロトコル:ファイル転送プロトコル ESETは、MirrorFaceがSecure Copy Protocol(SCP)を使用して収集したデータを送信しているのを確認しています。
影響 T1486 データの暗号化により影響を与える LODEINFOは、標的ユーザーのマシンにあるファイルを暗号化できます。