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

Emotetによる攻撃が沈静化 新たな攻撃方法を模索中か

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

本記事はキヤノンマーケティングジャパンが提供する「サイバーセキュリティ情報局」に掲載された「盛衰を繰り返すEmotet - 2023年の最新動向」を再編集したものです。

 2021年初めに一時沈静化したものの、同年11月には活動を再開。Emotetのその後の動向について解説します。

 Emotetは2014年から活動しているマルウェア系統の1つであり、MealybugまたはTA542として知られるサイバー犯罪組織によって運営されています。当初Emotetは銀行を標的とするトロイの木馬でしたが、後にボットネットへと進化し、世界で最も拡散した脅威の1つとなりました。Emotetはスパムメールから拡散し、侵害したコンピューターの情報を外部に送信し、別組織のマルウェアを展開しています。Emotetは、特定の標的を攻撃しているわけではなく、個人から大規模企業のシステムにもマルウェアをインストールしています。

 2021年1月、欧州司法機構と欧州刑事警察機構によって組織された8ヶ国による国際的な共同作戦によって、Emotetの攻撃基盤がテイクダウンされました。この作戦によってEmotetの活動は一時的に停止に追い込まれましたが、2021年11月に活動を再開しました。

本ブログの要点

・Emotetは、テイクダウン後に活動を再開してから、いくつものスパムキャンペーンを展開しています。
・その後、Mealybugは新しい複数のモジュールを開発しており、既存のすべてのモジュールにも何度も手を加えて、改良しています。
・Emotetのオペレーターは、ボットネットが復活してから、監視と追跡を回避するために膨大な労力を費やしています。
・現在、Emotetの活動は沈静化しています。これは、新しい効果的な攻撃方法を見つけることができていないためだと考えられます。

図1. Emotetが活動を再開した後の重要なイベントのタイムライン

スパムキャンペーン

 Emotetが活動を再開し、2021年末には複数のスパムキャンペーンが展開されました。2022年の初めもこの傾向は続き、Emotetのオペレーターが開始したいくつものスパムキャンペーンを、ESET社は確認しています。これらのキャンペーンでは、主にVBAマクロを埋め込んだ悪意のあるMicrosoft WordやMicrosoft Excel文書からEmotetは拡散されています。

 2022年7月、マイクロソフト社は、インターネットから入手した文書のVBAマクロを無効にすることで、悪意のある文書を添付したフィッシングメールをマルウェアの拡散手段として使用していたEmotetやQbotなどのマルウェアへの対策を行いました。2022年の初めにマイクロソフト社は、VBAマクロをデフォルトで無効にすることを発表し、当初は4月上旬にアップデートが配信されましたが、ユーザーからの否定的なフィードバックがあったため、そのアップデートはロールバックされました。最終的なアップデートは2022年7月末に提供されました。図2に示すように、このアップデートによりEmotetによる侵害の件数は大幅に減少し、2022年の夏には目立った活動は見られなくなりました。

図2. Emotetの検出傾向、7日移動平均線

 Emotetの主な攻撃方法が無効化されたことで、Emotetのオペレーターは標的を侵害するための新たな方法を模索するようになりました。Mealybugは、悪意のあるLNKファイルとXLLファイルを使用する実験的な攻撃を開始するなど、2022年末までは、VBAマクロと同じような効果をもたらす新しい攻撃手法を模索していました。2023年には、特徴がそれぞれ異なる3つのマルスパムキャンペーンを実施し、異なる侵入経路とソーシャルエンジニアリングの手法をテストしています。攻撃の規模が縮小し、手法を絶えず変更していることは、攻撃の効果についてEmotetのオペレーターが満足していないためだと考えられます。

 3つのうち最初のキャンペーンは2023年3月8日頃に発生しました。このキャンペーンではEmotetボットネットが悪意のあるVBAマクロを埋め込んだWord文書を、請求書のように偽装して配信しました。しかしマイクロソフト社によってVBAマクロはデフォルトで無効にされており、標的ユーザーは埋め込まれた悪意のあるコードを実行できないため、この攻撃は不可解でした。

 3月13日から3月18日にかけて実施された2つ目のキャンペーンでは、攻撃者はこれらの欠陥を認識したと見られ、リプライチェーン攻撃の手法を使用し、VBAマクロからVBScriptsを埋め込んだOneNoteファイル(ONE)へ切り替えています。標的ユーザーがこのファイルを開くと、保護されているように見えるOneNoteページが表示され、ファイルの内容を見るには「表示」ボタンをクリックするよう求められます。このグラフィック要素の背後には、EmotetのDLLをダウンロードするように設定されたVBScriptが隠されています。

 OneNoteは、この操作によって悪意のあるコンテンツが開かれる可能性があることを警告しますが、ユーザーはこのような確認画面をクリックすることが習慣化していることもあり、攻撃者にデバイスを侵害される恐れがあります。

 ESETのテレメトリ(監視データ)で観測された最後のキャンペーンは3月20日に開始されています。このキャンペーンは、米国における所得税の納付期限が迫っている状況に便乗していました。ボットネットによって送信された悪意のあるメールは、アメリカ連邦政府機関の内国歳入庁(IRS)から送信されているように装い、W-9 form.zipという名前のアーカイブファイルが添付されていました。このZIPファイルには、悪意のあるVBAマクロが埋め込まれたWord文書が含まれていましたが、標的となったユーザーがこのマクロを有効にしなければ、攻撃は成功しなかったはずです。米国のユーザーを標的としたこのキャンペーンとは別に、VBScriptsとOneNoteを組み込んだ手法を利用する別のキャンペーンも同時に進行していました。

 図3に示すように、ESET製品が検出した攻撃の多くは日本(43%)とイタリア(13%)を標的としていましたが、これらの国はESET製品を導入しているユーザーが多いため、この数字には偏りがある可能性があります。他国の状況を調べるため、これらの上位2ヶ国を除外すると、図4に示すように、スペイン(5%)が3位であり、メキシコ(5%)、南アフリカ(4%)が続き、世界のほかの国も標的となっていることがわかります。

図3. 2022年1月~2023年6月までのEmotetの検出数

図4. 2022年1月~2023年6月までのEmotetの検出数(日本とイタリアを除く)

保護と難読化の強化

 Emotetは活動を再開してから、数回アップグレードしています。注意すべき最初の特徴は、ボットネットが暗号スキームを切り替えたことです。Emotetはテイクダウンの前までは、主に非対称鍵暗号のRSAを使用していましたが、復活してからはEmotetのボットネットは楕円曲線暗号を使用するようになりました。現在、すべてのダウンローダーモジュール(メインモジュールとも呼ばれます)には2つの公開鍵が埋め込まれています。1つは、楕円曲線ディフィー・ヘルマン鍵交換プロトコルに使われ、もう1つは署名検証(デジタル署名アルゴリズム)に使用されています。

 Emotetマルウェアは64bitアーキテクチャに更新されましたが、それ以外にも、MealybugはEmotetのモジュールを保護するためにいくつもの新しい難読化の手法を実装しています。注意すべき最初の難読化手法は制御フローの平坦化です。この手法によって、Emotetモジュールの解析やコードの重要部分の特定に膨大な時間が必要となります。

 Mealybugはまた、多くのランダム化の手法を実装して改良しています。これらのランダム化の手法の中で最も注意が必要なのは、構造体要素の順序のランダム化と、定数を計算する命令のランダム化です。この手法では、定数がマスクされています。

 特筆すべきもう1つのアップデートはEmotetモジュールでタイマーキューが使用されたことです。このアップデートは2022年の最後の四半期に行われました。これらのタイマーキューによって、モジュールのメイン関数とモジュールの通信部分がコールバック関数として設定され、複数のスレッドから呼び出されるようになりました。これらすべてが制御フローの平坦化と組み合わされており、呼び出すべきコードブロックを管理する状態値がスレッド間で共有されるようになりました。この難読化によって、分析が複雑になり、実行フローを追跡することがさらに難しくなりました。

新しいモジュール

 Mealybugは、マルウェアを広く拡散し、収益性を維持するため、複数の新しいモジュールを実装しています。これらの新しいモジュールを図5に黄色で示しています。ボットネットの防御メカニズムとして機能するモジュール、マルウェアをより効率的に拡散させるためのモジュール、そして、標的組織の金銭を窃取するために使用できる情報窃取モジュールが追加されています。

図5. 最も頻繁に使用されているEmotetのモジュール。テイクダウンの前から存在するモジュールを赤で示し、活動を再開してから追加されたモジュールを黄色で示している

Thunderbirdのメールと連絡先を盗み出すモジュール
 Emotetはスパムメールを介して拡散しますが、メールスレッドをハイジャックする手法を効果的に悪用しており、これらのスパムメールを多くのユーザーが信用しています。Emotetはテイクダウンの前には、Outlook Contact StealerとOutlook Email Stealerと呼ばれる、Outlookのメールと連絡先情報を窃取するモジュールを使用していました。しかし、すべてのユーザーがOutlookを使用しているわけではないため、Emotetはテイクダウン後に、無料のメールアプリケーションであるThunderbirdからもメールと連絡先情報を窃取するようになりました。

 Emotetは侵入したコンピューターにThunderbird Email Stealerモジュールを展開し、Thunderbirdのメールを窃取する場合があります。このモジュールは、受信したメッセージを含むThunderbirdのファイル(MBOX形式)を検索し、送信者、受信者、件名、日付、メッセージの内容などの複数のフィールドのデータを盗み出します。これらの情報はすべてC&Cサーバーに送信され、さらに処理されます。

 Emotetは、メール情報を窃取するThunderbird Email Stealerと一緒に、Thunderbirdから連絡先情報を窃取するThunderbird Contact Stealerも展開します。このモジュールも、Thunderbirdのファイルを検索しますが、受信したメッセージと送信したメッセージの両方を検索します。メール情報を窃取するモジュールとこのモジュールが異なる点は、送信者、送信先、CCフィールドから情報を抽出し、誰が誰と通信しているかを示す内部的なグラフを作成することです。次に、このモジュールは盗み出した連絡先を選別し、最も多く交流しているユーザーを特定して、この情報をC&Cサーバーに送信します。

 この処理は、テイクダウンの前から存在していたMailPassView StealerモジュールとSpammerモジュールの2つの追加モジュールによって補完されます。MailPassView Stealerは、パスワードを復元するNirSoftの正規のツールを悪用し、メールアプリケーションから認証情報を盗み出します。Mealybugは、メールの内容、認証情報、そしてユーザー間のつながりの情報を窃取および処理し、既存の会話への返信のように見せかけた悪意のあるメールを作成し、窃取した認証情報と一緒にそれらのメールをSpammerモジュールに送信します。

Google Chrome Credit Card Stealer
 モジュール名が示すように、Google Chrome Credit Card StealerはGoogle Chromeブラウザーに保存されているクレジットカード情報を盗み出します。この操作のために、モジュールは静的にリンクされたSQLite3ライブラリを使用して、通常、%LOCALAPPDATA%\Google\Chrome\User Data\Default\Web Dataに保存されている「Web Data」データベースファイルにアクセスします。このモジュールは、credit_cardsテーブルに対して、name_of_card、expiration_month、expiration_year、card_number_encryptedをクエリし、デフォルトのGoogle Chromeプロファイルに保存されているクレジットカード情報を検索します。最後のステップで、%LOCALAPPDATA%\Google\Chrome\User Data\Local Stateファイルに保存されている鍵を使用して、card_number_encryptedの値を復号し、すべての情報をC&Cサーバーに送信します。

SysteminfoおよびHardwareinfoモジュール
 Emotetが活動を再開した2021年11月の直後に、Systeminfoと呼ばれる新しいモジュールが追加されました。このモジュールは侵害したシステムに関する情報を収集し、C&Cサーバーに送信します。収集される情報は以下のとおりです。

・systeminfoコマンドの出力
・ipconfig /allコマンドの出力
・nltest /dclist: コマンドの出力(2022年10月に削除)
・プロセスのリスト
・秒単位のアップタイム(GetTickCountで取得)(2022年10月に削除)

 2022年10月に、Emotetのオペレーターは新しい別のモジュールを展開しました。ESET社は、このモジュールをHardwareinfoと命名しました。このモジュールは、侵害されたマシンのハードウェア情報だけを盗むわけではありませんが、Systeminfoモジュールを補完する役割を担っています。このモジュールは、侵害されたマシンから以下のデータを収集します。

・コンピューター名
・ユーザー名
・メジャーおよびマイナーバージョン番号を含むOSのバージョン情報
セッションID
・CPUブランドを示す文字列
・RAMサイズと使用状況に関する情報

 これらの両方のモジュールの主な目的は、Emotetが侵害した被害者から実際に通信が行われていることを検証することです。特に、Emotetが活動を再開して以降、コンピューターセキュリティ業界や研究者で非常に大きく取り上げられてきた経緯があることから、Mealybugは活動が追跡または監視されないようにする機能を追加するために膨大な労力を費やしています。データを収集するだけでなく、追跡や解析を妨害する手法を取り入れたこれらの2つのモジュールから収集される情報によって、Mealybugは、マルウェア研究者による操作やサンドボックスと、実際の標的ユーザーを見分ける能力を大幅に向上しています。

Emotetの今後の予測

 Emotetのボットネットは、エポックと呼ばれる個別のボットネット上で運用されていますが、ESETのテレメトリによると、Emotetボットネットの両方のエポックの活動は、2023年4月初めから沈静化しています。現在のところEmotetのオペレーターが新たに休暇を取っているのか、新しい効果的な侵害方法を模索しながら研究を続けているのか、新たな別のオペレーターがボットネットを運用しているのかは不明のままです。

 2023年1月にEmotetボットネットの1つまたは両方のエポックが別のオペレーターに売却されたという噂がありましたが、ESET社はその事実を確認していません。ただし、エポックの1つで異常な活動が見られています。ダウンローダーモジュールの最新アップデートには、モジュールの内部状態をログに記録し、その実行をファイルC:\JSmith\Loaderで追跡する新しい機能が含まれています(図6および図7を参照)。このファイルは、何らかの情報を記録するためのものであり、このモジュールの機能や仕組みを完全に理解していないユーザー向けのデバッグ出力のようにも見えます。また、Spammerモジュールは、これまでMealybugが安全だと考えたマシンでのみに使用しており、重要なモジュールとして扱ってきましたが、Emotetボットネットは同時期にSpammerモジュールも広く配信するようになっています。

図6. ダウンローダーモジュールの動作のログ

図7. ダウンローダーモジュールの動作のログ

 ボットネットの活動が沈静化している理由はわかりませんが、Emotetの脅威は十分に認識されており、オペレーターはボットネットの再構築と維持に努めており、いくつかの改良を加えています。今後もESET社のブログなどの情報を定期的に確認し、今後のEmotetの動向について確認するようにしてください。