2017年 1月3日(現地時間)、米連邦捜査局(FBI)と連携したイタリア警察当局により、2人のイタリア人が、同国の著名人その他多くの人物から機密情報を窃取した罪で起訴されました。これを受けて、トレンドマイクロは、2017年 1月11日、この情報窃取に使われたマルウェア「EyePyramid(アイピラミッド)」について報告しました。
両容疑者は Occhionero という名のイタリア人姉弟で、特別に細工したマルウェア「EyePyramid」を添付した標的型メールを用いて、機密情報を窃取したようです。陰謀説も噂されているこの事例で使われているマルウェア「EyePyramid」の名前は、調査中に確認されたドメイン名とディレクトリパスに由来しています。
そしてイタリアの報道機関「AGI」は、2017年1月11正午頃(現地時間)、裁判所からの命令を公開しました。そこには、弊社が前回報告した解析情報も含まれています。今回は、この攻撃キャンペーンについて、包括的な解析の詳細を報告します。
■解析の範囲
トレンドマイクロは、毎日のように新しく検出される「EyePyramid」関連の検体を、250種類ほど解析しました。そして、第1回目の報告の直後、10数個ほどの怪しい検体が、不正プログラムや URL の検索サービス「VirusTotal」にアップロードされ、それらの検体に「#eyepyramid」が付けられているのを確認しました。しかし弊社は、それらの検体は「偽物」と考えています。なぜなら、それらの検体は、「EyePyramid」の事例との関連が確認された検体のいずれとも類似していないからです。それらの「偽検体」と、「EyePyramid」として識別された検体の間に全く関連がないと断言することはできませんが、「偽検体」は意図的に除外して解析を進めました。
■攻撃対象となった Eメールアカウント
いくつかの検体から、さまざまなドメインのメールアカウントが対象とされた証拠が確認できます。メールアカウントと一緒に、アカウント認証情報とメッセージ両方の情報も窃取されていました。以下は対象ドメインの一覧です。
攻撃対象ドメイン | |||
@alice.it @aol.com @att.net @badoo.com @bellsouth.net @bluewin.ch @btinternet.com @comcast.net @cox.net @cyh.com.tr @earthlink.net @eim.ae @email.com @email.it @emirates.net.ae @excite.it @facebook.com @facebookmail.com @fastweb.it @fastwebmail.it @fastwebnet.it @free.fr @gmail.com @gmail.it @gmx.de @gmx.net |
@googlegroups.com @googlemail.com @groupama.it @groups.facebook.com @gvt.net.br @hanmail.net @hinet.net @hotmail.co.uk @hotmail.com @hotmail.fr @hotmail.it @infinito.it @interbusiness.it @interfree.it @inwind.it @iol.it @jazztel.es @jumpy.it @katamail.com @laposte.net @legalmail.it @libero.it @live.com @live.it @lycos.com @lycos.it |
@mac.com @mail.bakeca.it @mail.com @mail.ru @mail.vodafone.it @mail.wind.it @mclink.it @me.com @msn.com @mtnl.net.in @nate.com @netscape.net @netzero.com @orange.fr @otenet.gr @poczta.onet.pl @poste.it @proxad.net @rediffmail.com @rocketmail.com @runbox.com @saudi.net.sa @sbcglobal.net @skynet.be @supereva.it @sympatico.ca |
@t-online.de @tele2.it @verizon.net @virgilio.it @vodafone.com @vodafone.it @vsnl.net.in @wanadoo.fr @web.de @yahoo.ca @yahoo.co.in @yahoo.co.jp @yahoo.co.uk @yahoo.com @yahoo.com.ar @yahoo.com.br @yahoo.com.mx @yahoo.de @yahoo.es @yahoo.fr @yahoo.it @yahoogroups.com @ymail.com |
■攻撃フロー
今回の攻撃では、効果的かつ着実に標的型メールを実行するために巧妙に計画された準備段階が特徴です。攻撃者は、同じ「EyePyramid」を利用した別の攻撃であるいはそれ以外の方法で窃取されたメールアカウントのリストから開始します。これらのメールアカウントは、最終的な標的である著名人に信頼されていると考えられる個人あるいは組織のものです。
攻撃者は、これらのメールアカウントを送信元として利用すると同時に、マルウェアの実行形式ファイルの拡張子「.exe」を隠ぺいするために添付ファイル名を偽装し、標的者の PC に最終的に感染させました。
感染PC上でマルウェアのファイルが実行されると、マルウェアは自身を更新し、上記の攻撃対象ドメイン一覧に記載のあるメールアカウントに関連した情報を収集し、得た情報を HTTP または HTTPS経由で、メールアドレスやコマンド&コントロール(C&C)サーバへ送出します。このようにして、窃取したメールアカウントが攻撃者の感染メールアドレスのリストに追加され、さらに他のユーザにマルウェアを拡散するために利用されます。
図1:攻撃フロー
■コンパイル日時と攻撃対象地域
トレンドマイクロは、コンパイル日時のタイムスタンプを基に、図2を作成しました。これは、弊社の他の継続した解析結果にも合致しています。「EyePyramid」として識別された検体がコンパイルされた年を見ると、2014年に突出しており、他の年の3倍以上となっています。
図2:「EyePyramid」の検体から確認された、コンパイル日時の分布(年別)
「EyePyramid」はイタリアを拠点にしていますが、以下の地図が示すように、攻撃対象がイタリアに集中したわけではありません。
図3:「EyePyramid」の攻撃対象地域の分布
上位10の地域 | % |
イタリア | 14.77 |
米国 | 9.79 |
日本 | 9.61 |
英国 | 5.87 |
台湾 | 4.45 |
ドイツ | 4.27 |
フランス | 3.20 |
インド | 2.14 |
ブラジル | 1.78 |
オーストリア | 1.60 |
その他 | 42.52 |
■「EyePyramid」はどのように改良されてきたのか
弊社は、継続した解析の結果、さまざまな機能から「EyePyramid」の検体をいくつかのグループに分別することが可能になりました。
- 実行ファイルが作成された年(コンパイル日時のタイムスタンプ)
- 当初の、あるいは内部で利用されるファイル名
- 利用されている難読化ツールとパッカー。難読化ツールの利用には2つの組み合わせが存在
- 人気の難読化ツール「Skater.NET」と「Dotfuscator」の組み合わせ(ほとんどはこの方法で処理されていました)。
- 最近の強力な難読化ツール「ConfuserEx」(最近解析された検体のみ該当)。
- 当初の検体のコード、難読化復元後のコード、デコンパイル後のコードあるいは文字列復号後のコードに、以下の文字列が存在
- ”gmail.it ” :この文字列は、Google のメールアカウントのドメインとして知られる ”gmail.com” と ”googlemail.com” に隣接して表示されます。これはイタリアの Gmailユーザを対象にしようとした作成者のミスであった可能性があります。”gmail.it” ではなく、無料メールサービスである ”Gmail.it” のユーザを対象にしようとしていた可能性もありますが、作成者に確認する手段がないため、その裏付けを得ることはできません。なお、”Gmail.it” は、Google のサービスとは何ら関わりはありません。
- 「EyePyramid」の事例とのつながりを示すパス:トレンドマイクロは、コンパイル日時2014年12月13日の検体に文字列 “\Work\EyePyramid\” を確認し、当初のファイル名は “mfkr.exe” でした。これは、この事例の名称の元となった文字列の一つです。このような文字列の存在は、マルウェアが「EyePyramid」に関連していることを示す強力な指標となります。しかし、「EyePyramid」に関係するすべての検体にこの文字列が含まれるわけではありません。
- 「Desaware」製の「SpyWorks」コンポーネントの利用:キー入力のキャプチャ機能の実装、またシステムレベルのフックの作成に利用されています。
図4:キー入力のキャプチャ機能のコード - 以下のとおり特定のコンポーネントのコード再利用を示すパスあるいはライブラリ名
- :\Projects\VS2005\ChromePass\Release\ChromePass.pdb
- :\Projects\VS2005\MyLastSearch\release\MyLastSearch.pdb
- :\Projects\VS2005\NK2View\Release\NK2View.pdb
- :\Projects\VS2005\ProduKey\Release\ProduKey.pdb
- :\Projects\VS2005\RecentFilesView\Release\RecentFilesView.pdb
- :\Projects\VS2005\USBDeview\Release\USBDeview.pdb
- :\Projects\VS2005\WirelessKeyView\Release\WirelessKeyView.pdb
- :\Projects\VS2005\mspass\Release\mspass.pdb
- :\Projects\VS2005\netpass\Release\netpass.pdb
- :\projects\VS2005\iepv\Release\iepv.pdb
- :\projects\vs2005\shortcutsman\release\shman.pdb
これらの文字列は、特定の機能を備えるソフトウェアコンポーネントが、マルウェアに組み込まれていることを示しています。例えば “iepv\Release\iepv.pdb” は小型のユーティリティソフトウェア兼ライブラリ「IE PassView」で、これにより保存されたパスワードを回収することができます。他のコンポーネントについても、同様に情報を回収する機能を備えています。これらのコンポーネントから、マルウェアの目的にはブラウザのデータを収集することが含まれることを意味しています。
頻出するパスの文字列 “:\projects\vs2005” もまた、マルウェアの作成者についての手がかりとなります。弊社は、2014年と 2015年の亜種にこれらの文字列を確認しました。どちらの亜種のファイル名も “vmgr.exe” で、これは、どちらも作成者が同じであることを示唆しています。とはいえ、同じプログラミング環境でコンパイルされたのではないことが確認されています。2014年の亜種は、「.NET 4.5.5416.41981」でコンパイルされているのに対し、2015年の亜種は、「.NET 4.5.5604.16127」でコンパイルされていました。
トレンドマイクロは、これらの特徴に基づいて、マルウェアの概要を作成しました(図5)。例えば、Skype の会話を収集し送出する機能を持つ亜種と、そうでないものが存在することからもわかるように、この犯罪を実行した攻撃者が時間をかけてマルウェアの機能、C&C および送信先の Eメールアドレス、コンパイラのバージョン、および保護機能を変更を加え「改良」していったことがうかがえます。
図5:一覧表(2010~2016)
■2011年に発生した 「Bisignani」の事例との関連
2012年、著名なイタリアの実業家と、Luigi Bisignani という名前の元ジャーナリストが、「Propaganda 4 secret society(P4秘密結社)」の一味として起訴されました。 P4 は政治的な決定に影響を与えたとされるイタリアのフリーメイソンの第4ロッジでした。
「Bisignani」の事例で利用されたマルウェアには、収集した情報の送出先 Eメールアドレスとしていくつかの Gmail アドレスが利用されていました。そして、イタリアのサイバー犯罪対策機関である CNAIPIC の調査員は、同じメールアドレスが、最近の「EyePyramid」の亜種でも利用されていたことを確認しました。また、トレンドマイクロは、2012年のものである「EyePyramid」の古い亜種でも、同じメールアドレスが利用されているのを確認しました。
もう一つ、利用されているメールサーバ “mail.hospenta.com” からも両事例のつながりが確認できます。このメールサーバは、最近の「EyePyramid」のバージョンでも利用されていますが、妙なことに、2010年のバージョンで “mail.hostpenta.com” が利用されているのに対し、2012年のバージョンでは利用されていませんでした。2010年と 2012年の両バージョンとも、よく知られることとなった「MailBee」のライセンスキー “MN600-D8102F401003102110C5114F1F18-0E8C” を利用していますが、このライセンスキーは Giulio Occhionero が購入したものか、あるいは彼の名前を利用して購入されたものです。
■「EyePyramid」の主要な機能
EyePyramidの主要な機能を以下に挙げます。ここでは、「EyePyramid」の機能すべてではなく、関連する主要なものについて説明しています。
●持続性
最初にマルウェアが実行されると、通常、ハードドライブ上の ”\ C” 以下のフォルダ内に、ランダムなリストから選択したファイル名で、自身のコピーを作成します。
図6:ランダムなファイル名の選択
マルウェアの効果を持続させるために、レジストリキー “CurrentVersion\Run” および “CurrentVersion\RunOnce” を変更するか、またはエントリを追加するという従来の手法が利用されています。
図7:自動起動レジストリのエントリ
マルウェアの実行ファイルパスにこれらのエントリの値を設定すると、ユーザのログオン時に毎回必ず実行されることになります。
●コードの再利用:亜種によってライブラリの組み合わせが異なる
「EyePyramid」の興味深い特徴は、周知のサードパーティのコンポーネントや、オープンソースライブラリを利用している点です。これは作成者が持つ技術の判断基準にもなります。
以下のライブラリが確認されました。
- 「MouseKeyboardActivityMonitor:システムすべての、キー入力とマウスの動作を監視するためのライブラリ。キー入力情報を窃取するために、このコンポーネントが利用されていました。
- 「Internet Explorer Passwords Viewer」:この他にも、例えば、Google Chrome のパスワードを回収するコンポーネントなどが、ブラウザに保存された認証情報を窃取するために利用されていました。
- ソフトウェア開発会社「Desaware」による「SpyWorks」:これは、キー入力をキャプチャ、あるいはプログラムの実行フローを迂回するシステムフックを作成するために利用されています。Desaware のコンポーネントの存在は、コード内に次の文字列が確認され明らかになりました。
- d:\srcnet\Desaware.SpyWorksDotNet\Release820\Desaware.shcomponent20.pdb
- 「MailBee」:Eメールの処理に利用されるコンポーネント。これは Giulio Occhionero への攻撃を仕掛ける際に利用されたコンポーネントです。埋め込まれたライセンスキーは、彼の名前で購入されていたものでした。
- 「SevenZip」:7z のデータを作成するための共通ライブラリ。暗号化して攻撃者に送出する前に、窃取したファイルを圧縮するために利用されます。
●ファイルの収集および送出
前回報告したとおり、「EyePyramid」の主な機能は、ファイルの収集および送出です。以下の拡張子を持つファイルが対象とされます。
図8:対象ファイルの拡張子
また、「EyePyramid」は、Microsoft Exchange Client、 Windows Messaging、Microsoft Outlookといったさまざまなアプリケーションソフトウェアが、メッセージや予定表などのコピーを保存するために使用する拡張子「*.pst」のファイルを検索します。
図9:PSTファイルを狙うコード
●Skypeのデータ
図10は、通常「vmgr.exe」というファイル名を持つ「EyePyramid」亜種の、部分的に逆コンパイルされたソースコードに確認されたクエリです。アカウント・連絡先・メッセージ・Skypeの SMSのデータベース(Skypeの情報が含まれている)を読み出そうとしていることが確認できます。
図10:Skype を狙うコード
●セキュリティ対策ソフトウェアの無効化
「EyePyramid」は、さまざまなセキュリティ対策ツールを無効化します。以下の図11~13から、リアルタイム保護機能とマルウェア検知・処理といった機能の両方を起動させないようにしていることが確認できます。
図11~13:セキュリティ対策ソフトウェアを狙うコードの例
●難読化と回避
マルウェアのコードは、「Skater」と「Dotfuscator」の組み合わせ、あるいは「ConfuserEx」、これら 3つのツールによって難読化されています。その結果、完成した実行ファイルは、単純なデバッグ処理や仮想環境下での動的解析を回避します。しかし、そのような回避機能は比較的軽いもので、高度に保護されているわけではありません。
さらに、仕上げに、逆コンパイルされたソースコードに特別な文字列暗号化または難読化が施されています。具体的には、「Skater」と「Dotfuscator」の組み合わせを利用している検体のほとんどは、シリアル化した後バイト配列に短縮し、3DES暗号化を使用して文字列を暗号化しています。トレンドマイクロは、暗号化活動のリバースエンジニアリングによって、暗号化された文字列を復号しました。
■その他の目立った特徴
●HTMLメールでクロスサイトスクリプティング実行
弊社は、図14のコードの一部に見られるように、マルウェア作成者がEメールを利用した「クロスサイトスクリプティング(XSS)」を試していたことを確認しました。これは、デバッグの目的で利用されていたものです。
図14:XSSを実行するコード(21b6f2584485b8bbfffdefd45c1c72dc2133290fd8cefb235eb39cf015550316)
●流出したメールアカウントの利用
解析の間、さまざまな解析者から、詳細を求めるEメールを受け取りました。ある読者からは、流出情報のデータベース「Leaked Source」の情報によれば、「EyePyramid」の標的型メールの送信に利用されたメールアドレスと同じものが、複数の出会い系サイトのユーザ登録で利用されていた、と指摘がありました。
裁判所命令に記載されている、データの収集活動に関係しているというドメインを「Leaked Source」で検索すると、指摘のような状況が明らかになりました。出合い系やソーシャルメディアなどのWebサイトに登録するため利用されたEメールアドレスは、情報漏えい事例などで流出したものでした。つまり、そのようなメールアカウントの認証情報は、正当な所有者によって変更されるまで、基本的にだれでも利用可能であると言えます。
●アイコン
検出基準には含まれませんが、トレンドマイクロが解析した検体には、81種類のアイコンがありました。そのうちのいくつかを以下に示します。
図15:「EyePyramid」が利用するアイコン
■解析方法
図16:解析のプロセス
トレンドマイクロは、「EyePyramid」の解析にあたって、AGIが公開した裁判所の命令にも含まれている内容から開始し、一般的な方法を用いました。そこから、弊社はいくつかのパターンを抽出し、従来の解析方法に従い、Yaraルールおよび特殊な後処理スクリプトを書きだし、最初のパターンを一致させます。こうして、一連の検体を確認することが可能になり、その中に、「d3ad32bcb255e56cd2a768b3cbf6bafda88233288fc6650d0dfa3810be75f74c」が確認されました。他の解析者も、これが「EyePyramid」に関係していることを確認しています。
弊社は、マニュアルで難読化を復元し、コードを逆コンパイルし、ソースコードの系図を取得しました。そこで、マルウェアの活動のさらなる詳細を確認することができました。これらの活動の一部は、「Deep Discovery™ Analyzer」のカスタムサンドボックス環境下で最初の検体を実行した際に確認されました。
新たに確認された詳細を元に、従来の解析プロセスを精錬し、さらに多くの検体を解析することができました。そのうち数種は、現在手作業で解析されています。使用した属性、例えば、ライブラリ名、ドメイン名、Eメールアドレスなどの中で、実行ファイルの元の名前は、特に有用でした。これは珍しいことで、巧妙な攻撃者であれば、少なくとも、PEヘッダの一貫した名前をランダム化するために手間をかけるでしょう。
トレンドマイクロでは、日々このような反復プロセスを実行し、顧客ユーザから送られる報告と弊社の調査結果をあわせて調査、解析を行っています。
■結論
「EyePyramid」の起源と帰属は依然として不明です。Giulio Occhionero の名前で登録されているライセンスキーは有力な証拠と見なすことができます。しかし、マルウェア作成者は、痕跡を隠ぺいするために、例えば、難読化、パッカーの利用、暗号化、セキュリティ対策ツールの無効化という、単純とはいえ手間のかかる機能を利用したのにもかかわらず、主流亜種のすべてに自分の名前のライセンスキーを埋め込んでしまったのでしょうか。それは不明なままです。さらに、裁判所の命令にあるドメイン一覧の、ドメインと IP履歴データの解析から、「occhionero.com」と「occhionero.info」と名付けられたドメインが明らかになっており、これも理屈に合わない点といえます。
また、今回の解析から、当初のソースコードから定期的に更新されてきたことが判明しています。そして、長年にわたって「EyePyramid」のさまざまなバージョンが作成されていた PC環境も、コンパイラのバージョンが更新されているところから、Microsoft developer tools のバージョンも併せて更新されていること、また利用する難読化ツールも「Skater」と「Dotfuscator」の組み合わせから、より強力な「ConfuserEx」へ変更したりと、同時に改良を加えていったことがうかがえます。
弊社の解析についてさらなる詳細はこちらを参照してください。
参考記事:
- 「Uncovering the Inner Workings of EyePyramid」
by Federico Maggi(Senior Threat Researcher)
翻訳:室賀 美和(Core Technology Marketing, TrendLabs)