活動を停止したものと思われていた悪名高いスパイグループ「Dukes」に関連した3つの新しいマルウェアをESETが発見しました。
Dukesは2016年から積極的に活動しており、新しいマルウェアを開発しつつ価値の高い標的を攻撃していたということがESETの調査で明らかになりました。
本記事はESET Japanが提供する「ESETブログ」に掲載された「Operation Ghost:2016年米国選挙で関与が疑われていたスパイグループDukesが、何年も秘密裏に活動していたことが判明」を再編集したものです。
Dukes(別名APT29、Cozy Bear)は、民主党全国委員会の2016年米国選挙における準備の攻撃に関与していた疑いで脚光を浴びていました。それ以来、2018年の11月に一度だけ、米国にある複数の組織にフィッシング攻撃を仕掛けたと言われる時を除いて、確信を持ってDukesのものと断定できる活動はありませんでした。そのため、このグループは活動を停止したものと思われていました。
しかし、ここ数ヶ月でESETがDukesに関連したPolyglotDuke、RegDuke、FatDukeという3つの新しい一連のマルウェアを見つけたことで、それが事実ではないということが判明しました。これらの新しいマルウェアはごく最近まで使われており、最近確認された検体は2019年1月に展開されたものです。つまり、Dukesは2016年から積極的に活動しており、新しいマルウェアを開発しつつ価値の高い標的を攻撃していたということです。この新しく発見されたDukesの活動を、ESETは総称してOperation Ghostと名付けました。
変遷と被害分析
Operation Ghostは2013年に始まったと思われ、この記事の執筆時点でも未だ活動を続けています。ESETの調査で、ヨーロッパの少なくとも3カ国の外務省がこの攻撃に影響を受けていると示されています。ESETはさらに、ワシントンDCのEU加盟国の大使館でもDukesによる侵入を発見しています。
この攻撃の中で初めて明らかになった痕跡は、2014年1月のRedditの投稿です。図1は攻撃者による投稿です。見慣れない文字を使った奇妙な文字列は、PolyglotDukeが使う、エンコードされたC&CサーバーのURLです。
図2では、Operation Ghostの変遷を示しています。これはESETのテレメトリに基づくため、この一連の動き全体からすると、ほんの一部である可能性もあります。
Dukesの攻撃と考えられる根拠
一方で、この攻撃に使われる手法は以前に記録されたものと多くの共通点を持っています。たとえば以下の使用です。
- Twitter(ほか、Redditなどのソーシャルメディア)によってC&CのURLをホストしている
- ペイロードやC&Cとの通信を画像に隠している
- 常駐化のためにWMIを使用している
攻撃の標的にも以下のような重要な共通点があることを発見しています。
- 現在までに判明している標的は全て外務省である。
- 判明している3つの標的にされた組織のうち2つは以前に、CozyDuke、OnionDuke、MiniDukeなど他のDukesのマルウェア攻撃を受けている。
- PolyglotDukeやMiniDukeに攻撃を受けた端末では、CozyDukeが数ヶ月前にインストールされている。
しかしこの推測はあくまで既知のDukesツールが同じ端末上にあることを元にしているので、その点は少し割り引いて考えた方がいいかもしれません。ESETは他にも、2つのAPT攻撃(TurlaとSednit)を同じコンピューター上に見つけています。
一方で、すでに確認している検体とOperation Ghostの検体の間で、コードが非常に似通っていることも発見しています。偽旗作戦である恐れ否定はできませんが、この一連の動きはDukesの手法がまだそれほど知られていなかった時期から始まっています。2013年には、PolyglotDukeが初めてコンパイルされたであろう日までに発見されていたのはMiniDukeのみで、分析者はこの脅威の重要性には気づいていませんでした。このことからも、Operation Ghostは他のキャンペーンと同時並行で、現在まで検出されることなく秘密裏に実行されていたようです。
PolyglotDuke(SHA-1: D09C4E7B641F8CB7CC86190FD9A778C6955FEA28)は独自の暗号化アルゴリズムを使用してマルウェアが使う文字列を解読します。2014年にF-Secureが確認したOnionDukeの検体(SHA-1: A75995F94854DEA8799650A2F4A97980B71199D2)で、ESETは機能が一致するコードを見つけています。興味深いのは、srand関数をシードするために使われた値が、実行ファイルをコンパイルした時のタイムスタンプだったということです。たとえば0x5289f207という値は2013年11月18日月曜日10:55:03 UTCに対応しています。
図3のIDAスクリーンショットは、その2つの似た機能を示しています。
最近のMiniDukeのバックドアの検体にも、5年以上前に記録された検体との共通点があります。図4は、Kasperskyによって2014年に記録されたMiniDukeバックドア(SHA-1: 86EC70C27E5346700714DBAE2F10E168A08210E4)と、2018年の8月にコンパイルされたMiniDukeバックドア(SHA-1: B05CABA461000C6EBD8B237F318577E9BCCD6047)との機能の比較です。
既知のDukesと、Operation Ghostの間に数多くの共通点があること、特にコードが非常に似ていることや以前の活動との時期がかぶることを考えると、この攻撃はDukesによって実行されているということをESETは確信しています。
アップデートされたツールと手法
Operation Ghostでは、Dukesは限られた数のツールを使用していますが、検出を避けるために数々の興味深い戦略を取り入れていました。
まず、常駐のための高度な機能を実装していることです。認証情報を盗み、それを体系的に使用して、ネットワークを水平移動します。管理者の認証情報を使用し、同じローカルネットワーク上にある端末を感染させたり、再感染させたりしている状況も確認しています。そのため、Dukesの攻撃に対応する時に重要なのは、短時間ですべてのマルウェアを除去することです。そうしないと、攻撃者は残ったマルウェアを使って、クリーンにしたと思ったシステムを再度攻撃してきます。
次に、彼らは4つのステージに分割される高度なマルウェアプラットフォームを使用しています。
- PolylotDukeは、Twitterやその他RedditやImgurなどのWebサイトを使い、C&CのURLを入手します。画像の中にC&C通信を隠蔽します。
- RegDukeはリカバリーの第1段階であり、DropboxをC&Cサーバーとして使用します。主たるペイロードはディスク上で暗号化されており、暗号化キーはWindowsレジストリに保存されています。上記のように、画像内にデータを隠蔽するステガノグラフィーにも依拠しています。
- MiniDukeバックドアは第2段階です。このシンプルなバックドアはアセンブリ言語で書かれています。古いMiniDukeのバックドアと非常に似ています。
- FatDukeが第3段階です。この高度なバックドアは多くの機能を実行し、設定に非常に柔軟性があります。コードでは多くの難読化手法が使用されており、コードを再コンパイルし、難読化を頻繁に行うことで、セキュリティ製品による検出を防いでいます。
図5は、Operation Ghostのマルウェアプラットフォームをまとめたものです。
第3に、攻撃のオペレーターは攻撃対象の組織ごとに異なるC&Cネットワークインフラストラクチャを使用していることも判明しています。このような使い分けは、極めて慎重な攻撃者に見られるものです。こうすることで、感染を発見した被害者にそのセキュリティの侵害の痕跡をセキュリティコミュニティにシェアされ、すべての攻撃が無に帰すことを防いでいます。
結論
今回のESETの新しい調査から、スパイグループに関連するレポートが何年も出されていないとしても、それは必ずしもスパイ活動を停止したことを意味しないことが分かりました。Dukesは何年間も秘密裏に活動しており、価値の高い標的を侵害し続けていたのです。
セキュリティ侵害の痕跡情報(IoCs)や検体全体のリストは、ホワイトペーパーやGitHub上で公開されています。
このバックドアに関するより詳細な分析は、ESETのホワイトペーパーTODOをご覧ください。