サイバーレスキュー隊(J-CRAT)分析レポート 2016
長期感染の実態
~1台の感染 PC に残された攻撃痕跡の分析~
ジェイ・クラート目次
1. はじめに ... 1 1.1. 本レポートについて ... 1 1.2. 対象読者と目的について ... 2 2. 不審通信から攻撃インフラを分析する ... 4 2.1. 不審通信とマルウェア ... 4 2.2. 攻撃想定時期... 5 2.3. 長期感染 ... 6 2.4. 攻撃者が準備したドメインと IP アドレス ... 7 2.4.1. ドメインの利用履歴 ... 7 2.4.2. IP アドレス利用履歴 ... 8 2.4.3. マルウェアとの関連 ... 9 2.5. マルウェアの挙動 ... 10 2.5.1. 本検体の構成 ... 10 2.5.1. 本検体の動作 ... 12 3. 攻撃痕跡から攻撃者の挙動を推測する ... 14 3.1. 攻撃者が利用したフォルダとファイル ... 15 3.1.1. フォルダ構成 ... 15 3.1.2. 配置されたファイル ... 16 3.1.3. スクリプト・バッチファイルと関連ファイル ... 21 3.2. 攻撃者の行動を示唆する痕跡 ... 26 3.2.1. Windows OS が記録したもの ... 26 3.2.2. MasterFileTable に記録されていたもの ... 28 3.2.3. アプリケーションが記録したもの ... 30 3.2.4. その他実行を示唆するもの ... 31 3.3. 攻撃のタイムライン ... 32 3.3.1. 攻撃の段階 ... 32 3.3.2. 攻撃の想定タイムライン ... 32 3.3.3. カレンダー ... 34 4. 攻撃の検知と調査の手法を検討する ... 36 4.1. PC での検知に関する課題と対策 ... 36 4.1.1. ウイルス対策ソフトの課題と対策 ... 36 4.1.2. イベントログの課題と対策 ... 39 4.2. ログに関する考慮事項 ... 45 4.2.1. PC での外部通信ログの取得 ... 454.2.2. ログに関する要件 ... 49 4.3. 感染嫌疑の調査例 ... 52 4.3.1. 調査すべきサーバログ ... 52 4.3.2. 調査の目的と観点について ... 54 4.3.3. 感染嫌疑PC の変更調査 ... 55 4.3.4. 公開情報の調査 ... 59 4.4. 調査方法補足... 61 4.4.1. ハードディスクの複製 ... 61 5. おわりに ... 63 付録 攻撃痕跡確認対応度チェックシート
1
1. はじめに
1.1. 本レポートについて
標的型攻撃はどのような痕跡を残すだろうか。攻撃者は様々な工夫を凝らして、標的を 感染させる手順を考え、マルウェアを作成し、攻撃インフラを整えて攻撃を実行する。標 的型攻撃で使われるマルウェアは、従来型の対策では検出しにくいため、気付かない内 に、組織システムに潜入されているケースも多いと推測される。 今回のレポートは、2016 年度のレスキュー活動から、ある標的型攻撃を受けた組織から の情報提供がもととなっている。1 台のマルウェア感染 PC の中に見つけることのできた 攻撃痕跡に対して、公開情報にある情報も参考にしながら、その攻撃がどのように進めら れたかを分析した。その上で、このような攻撃を受けてしまった際に、いかにして早期に 検知し調査していくかを検討している。 本レポートは以下の章で構成している。 2 章: 不審通信から攻撃インフラを分析する 3 章: 攻撃痕跡から攻撃者の挙動を推測する 4 章: 攻撃の検知と調査の方法を検討する 2 章では、不審通信先の FQDN と IP アドレスに関する情報収集と不審通信ファイルの 動作を分析している。3 章では、攻撃痕跡を分析し攻撃者の挙動を推測しているが、それ らの攻撃痕跡に関連したファイルをできる限り実際の内容で記載しているので、攻撃を現 実のものとして捉えられると思う。4 章では、一般的な PC 利用環境においての課題と対 策を解説し、初動対応における調査手順や考え方の一例を紹介している。自組織がもし被 害にあったら、このような調査に対応できる準備はできているだろうか、という観点で読 んでいただきたい。付録として、感染嫌疑時の調査準備ができているかを確認するチェッ クシートをつけているので、自己点検の目的で活用してほしい。2
1.2. 対象読者と目的について
本レポートでは、サイバーレスキュー隊J-CRAT の活動の一部として、過去に標的型サ イバー攻撃の被害を受けた組織の感染PC に残された攻撃痕跡を分析した結果を、実デー タもふくめて詳細に報告している。その意図は、以下である。 攻撃痕跡を詳細に提示することで、その脅威を現実のものとして理解していただく。 攻撃痕跡や攻撃者の挙動を理解することで、それらを早期発見する対策に活用いただ く。 本レポートは、細部に渡った技術的な解説も含んでいるので、全ての読者に全ページを お読みいただく必要はなく、組織システムの情報セキュリティに関わっている方の役割や 職務によって対象読者をわけ、目的とお読みいただきたい対象箇所を以下のように想定し ている。 対象読者 目的 対象箇所 最高情報セキュリティ責 任者(CISO) 組織を狙っている攻撃者からの脅威の 実態認識とそれに対する組織の体制や 人材の育成の必要性を把握いただく 1 章、2.1-3 節、3 章緒言、 5 章 システム運用管理者 組織システムの安全な運用にあたっ て、対策をはじめ、不審な挙動を確認 した際の組織としての対応方法を検討 いただく 【管理者】 1 章、2 章、3 章 【担当者】 全頁、付録 システム構築(事業)者 組織システムの構築に関わる際に、シ ステムへの攻撃を見据え、よりセキュ アなシステムの構築とインシデント発 生時に適切な対応をとるための証跡 (ログ)の取得など、攻撃に対抗でき るシステムの構築に向けた技術的知見 を高めていただく 全頁、付録 特に4 章と付録を中心に3 本レポートが、組織にとって益々大きな脅威となってきており、かつ今後も猛威が予見 されるサイバー空間における標的型攻撃に対して、事前対策、早期検知、事後対応の三位 一体を検討する上で、有用な情報となることを期待している。 本レポートでは、上記に記した主旨から多くのファイルの内容を記載しているが、組織 名・PC 名・アカウント名等の情報提供組織に関連する文字列や、何らかの意味を持つ数 値は、意味のない文字列や数値に変換し記載した。
4
2. 不審通信から攻撃インフラを分析する
標的型攻撃では、攻撃者がコントロールするCommand and Control サーバ(以降 C2 サーバ)がその攻撃インフラとして、大きな役割を担う。マルウェア1に感染させたPC を 遠隔操作する機能や、その制御を維持する目的で、用意したC2 サーバへの通信を一定間 隔で継続するというケースが多い。 今回情報提供頂いた1 台の感染 PC が発信していた不審通信から、通信内容、通信先情 報を得ることができた。本章では、これらの情報から攻撃者の攻撃インフラを分析する。
2.1. 不審通信とマルウェア
提供頂いた情報から、継続的に外部との通信を行っていた不審通信ファイルは2 つ発見 された。外部通信の記録を照らし合わせてみると、下記のFQDN および IP アドレスに接 続していたことが確認できた。 表 2.1-1 不審通信ファイルと通信先 ファイル名 通信先 C:¥ProgramData¥F3¥googleUpdate.exe bak.****mails.com C:¥ProgramData¥taskeng.exe 27.126.190.152 これらの不審通信ファイルを提供いただき、当チームの仮想PC 環境で動作させたとこ ろ、「googleUpdate.exe」が発信した通信内容が図 2.1-1 の通りであった。 図 2.1-1 不審通信の HTTP ヘッダ 1 本レポートではマルウェアをコンピュータウイルス、攻撃ツール等の総称として使用し ている。 POST /update?id=003343b0 HTTP/1.1 Accept: */* X-Session: 0 X-Status: 0 X-Size: 61456 X-Sn: 1User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3) Host: bak.****mails.com:443
Content-Length: 0 Connection: Keep-Alive Cache-Control: no-cache
5
この通信に見られる特徴(クアドラプルヘッダー)から、この不審通信ファイルは PlugX である可能性が高いと考えられた。PlugX は標的型攻撃で利用される遠隔操作マル ウェア(Remote Administration Tool、通称 RAT)の一種である。この不審通信を発生さ せた状態で、メモリイメージを取得し分析したところ、PlugX 特有の設定ファイルが発見 できたため、この通信を発生させているものはPlugX であると判断した。 もうひとつの「taskeng.exe」については、当該ファイル情報をもとに公開情報を確認す ると、トロイの木馬型ダウンローダーと思われる情報が発見できたため、このファイルが 接続する不審通信先についても、マルウェアに関連するものと考えられた。 これらのマルウェアへの感染状況、特にPlugX の感染から見て、感染 PC 利用者もしく は情報提供組織は、標的型攻撃にあっていた可能性があると考え、より詳しい調査を進め た。なお、この通信先であるドメインは2016 年 10 月現在、シンクホール2化されてお り、このドメインを利用した攻撃そのものは非活性状態であるといえる。
2.2. 攻撃想定時期
感染PC に残された各種情報を分析し整理すると、感染時期とその後の活動時期はおお よそ、以下の図 2.2-1 に示すとおりと考えられた。 図 2.2-1 感染時期と活動時期 初期感染から組織内ネットワークへの拡散である「横移動3」準備までの期間はおおよそ 1 ヶ月。この期間内に攻撃者の活動を示唆する痕跡が残されていた。ここではこの概要程 度にとどめ、詳細は3 章でその根拠となる攻撃痕跡をあげて解説する。 2攻撃者が手放したドメインをリサーチャーが取得し、そのドメインへの通信観測を行うこ と。被害組織の発見や攻撃動作の調査に利用される。ここでのリサーチャーは、セキュリ ティインシデントに関する調査を行っている組織や個人を指す。 3標的型攻撃における段階のひとつで、組織内部ネットワークを標的に向けて移動するこ と。6
2.3. 長期感染
今回のレポートのもととなった実際のレスキュー活動は、2016 年度に実施したものであ る。先にあげた不審通信ファイルは、感染PC が起動する度に動作するように設定されて いたため、この通信は感染時期である2014 年 5 月より発生し、2016 年まで継続していた と考えられる。感染後から攻撃者がドメインやC2 サーバを手放すまでは、いわば「攻撃 者のコントロール下」であったといえる。攻撃者がドメインを手放した後も、感染PC 内 でのマルウェアの活動は継続されている状態であり、通信を継続した状態となったままと なる。このような長期感染は、当チームのレスキュー活動において、しばしば見られるケ ースである。 図 2.3-1 長期感染イメージ 図 2.3-1 では、マルウェア感染後C2 サーバとの通信が継続したままの状態が続く様子 をあらわしている。ウイルス対策ソフトで検知できないマルウェアの場合、このような長 期間感染にいたる事も不思議ではない。今回の情報提供組織も同様であったと推測され る。7
2.4. 攻撃者が準備したドメインと IP アドレス
これら(表 2.1-1)のマルウェアが通信していた先はC2 サーバと考えられるが、その サーバ本体だけでなく、ドメインやFQDN、IP アドレスも攻撃者が準備した攻撃インフ ラのひとつといえる。ドメイン情報やIP アドレスの情報は、もともと公開されている情 報ではあるが、廃棄や変更等、運用によって可変する情報であるため、収集した情報は、 いつ収集されたかもあわせて確認することが重要である。 今回の不審通信は、表 2.1-1 のように、FQDN での通信と IP アドレスでの通信の 2 種 類あったため、今回の攻撃想定時期(2014 年 5 月~2014 年 6 月)に、それぞれの利用履 歴を確認し、関連性があるか等を分析した。2.4.1.
ドメインの利用履歴
ドメインの利用履歴は公開情報によって確認することが出来る。当該ドメインの登録情 報を更新した履歴を確認すると、表 2.4-1 の情報が得られた。 表 2.4-1 ドメイン情報の更新履歴 日付 更新内容 2013-08-01 Create Domain 2014-08-02 Changed NS 2014-08-07 Changed NS 2014-09-17 Dropped Domain 2013 年 8 月 1 日にドメインを新規作成し、2 度の Name Server の情報変更後、2014 年 9 月 17 日にドメインが廃棄されている。この期間に当該ドメインが利用されていた履歴を 公開情報から抽出し、表 2.4-2 にFQDN と IP アドレスおよび国を列挙した。このうち、 に図 2.2-1 の攻撃推定時期に合致するものについては、赤文字で記載している。 表 2.4-2 当該ドメインの利用履歴 FQDN IP アドレス bak.****mails.com 182.16.18.116 (HK) 27.126.190.152 (HK) 202.59.155.111 (HK) 112.125.17.103 (CN) sea.****mails.com 27.126.190.152 (HK)8 202.59.155.111 (HK) services.****mails.com 123.254.104.50 (HK) 199.101.28.20 (US) 27.126.190.152 (HK) 202.59.155.111 (HK) 112.125.17.103 (CN) mails.****mails.com 122.10.83.160(CN) 27.126.190.152 (HK) google.****mails.com 103.246.246.196 (HK) 112.125.17.103 (CN) www.****mails.com 27.126.190.152(HK) これらの情報から、当該ドメインでは、複数のFQDN、複数の IP アドレスが当時稼動 していたということがわかる。
2.4.2.
IP アドレス利用履歴
表 2.4-2 内には、もうひとつの不審通信先である「27.126.190.152」の IP アドレスを 利用していた記録もある。このIP アドレスを利用していた FQDN を表 2.4-3 に抜粋し た。また、攻撃想定時期に確認されたものは赤文字で記載している。 表 2.4-3 IP アドレスが合致する FQDN FQDN bak.****mails.com sea.****mails.com mails.****mails.com services.****mails.com www.****mails.com このように、当該ドメインには複数のFQDN と IP アドレスが存在するが、攻撃想定時 期に確認されたFQDN である「bak.****mails.com」、「sea.****mails.com」、 「services.****mails.com」については、「27.126.190.152」に紐付けされていたことが確 認されているため、これら(表 2.1-1)2つのマルウェアを使った攻撃は、同一の攻撃 者、もしくは関係のある攻撃者であると推測される。9
2.4.3.
マルウェアとの関連
ドメインやFQDN、IP アドレスが、C2 サーバやマルウェアのダウンロードサイトとし て利用されていた場合、関連するマルウェアの情報がそれらに紐付けて公開情報に記録さ れているケースがある。今回のドメインとIP アドレスには下記のようなマルウェアが関 連情報として記憶されていた。ファイル名、検出名(ウイルス対策ベンダー・検知名・確 認日)を抜粋し記載する。 表 2.4-4 ドメインに紐付いたマルウェア ファイル名 ネヒハツヌ驤・exe (簡体字中国語環境では人事情報.exe) 検出名 (抜粋) Fortinet W32/PLUGX.W!tr 20151211 TrendMicro BKDR_PLUGX.ANJ 20151211 Ikarus Backdoor.Win32.Gulpix 20151211 ドメインに紐付けられたマルウェアは、検出名からPlugX の一種であると考えられる。 また、あるセキュリティメーカーによるPlugX に関するレポートが 2013 年 12 月に出さ れているが、その中で当該ドメインに接続されることが記されている。このドメインは PlugX を使った攻撃に関連していた可能性が高いといえる。 表 2.4-5 IP アドレスに紐付いたマルウェア ファイル名 taskeng.exe 検出名 (抜粋) Microsoft TrojanDownloader:Win32/Thoper.B 20151009 Sophos Troj/Thoper-B 20151009 Ikarus Trojan-Downloader.Win32.Thoper 20151009 IP アドレスに紐付いたこのマルウェアは今回の不審通信ファイル「taskeng.exe」とフ ァイル名が同じであることと、このマルウェアを検知できるウイルス対策ソフトが50 種 類程ある中で、約20 のウイルス対策ソフトで同一検知名であったことから、このマルウ ェアも同タイプのダウンローダーであると考えられる。 これらの情報を加味すると、今回の情報提供組織が受けた攻撃は、このドメインとIP アドレスを利用して、「ダウンローダー」と「PlugX」を組み合わせて感染させるような 「複数の攻撃」が実行されたうちのひとつであることと推測される。10
2.5. マルウェアの挙動
PlugX は標的型攻撃でよく利用されるマルウェアであるため、多くのリサーチャーが研 究を進めており、複数の種類があることやその挙動については多くの情報が公開されてい る。ここでは、本検体の構成や動作を、当チームのテスト環境で実行した結果を示しなが ら、解説する。2.5.1.
本検体の構成
ファイル構成
本検体は、表 2.5-1 で示す、実行形式であるEXE ファイルと DLL ファイル、DLL を 補助するファイルとログファイルの4 ファイルで構成される。 表 2.5-1 本検体のファイル構成 ファイル名 備考 C:¥ProgramData¥F3¥googleUpdate.exe 署名付きファイル。 C:¥ProgramData¥F3¥goopdate.dll PlugX 関連ファイル。 C:¥ProgramData¥F3¥goopdate.dll.map PlugX 関連ファイル。 C:¥ProgramData¥F3¥NvSmart.hlp キーロガーによるログファイル。 これらのファイルを同一フォルダに配置し、「googleUpdate.exe」を実行すると、 「¥ProgramData」フォルダに F3 フォルダを生成し、自身の環境、つまり 「googleUpdate.exe」、「goopdate.dll」、「goopdate.dl.map」を F3 フォルダへコピーし、 新たに「NvSmart.hlp」ファイルを生成する。これらの実行に必要なファイル名は、著名 なソフトウェアを装ったファイル名となっており、特に「googleUpdate.exe」は署名付き のファイルであった。また、「NvSmart.hlp」は WindowsOS のヘルプファイルの拡張子 がつけられている。これらはファイル名表示や実行時のプロセス表示において、目立たな くする工夫だと思われる。 これらのファイルの属性には特徴が2 点ある。1 点目は、生成される F3 フォルダは隠 し属性が与えられているため、隠しファイルを表示させる設定でないと見ることが出来な い(図 2.5-1 参照)。2 点目は、これらのファイルにはキーロガーのログファイルである 「NvSmart.hlp」ファイルもふくめて、図 2.5-2 の通り、同一の最終更新日を与えられて いるが、感染毎に異なる日付に変更されていた。ファイルの隠し属性と変更される最終更 新日付についても、利用者が気付きにくくするための工夫だと思われる。11 図 2.5-1 隠し属性が与えられたファイル 図 2.5-2 変更された最終更新日付
永続化
本検体はPC 起動時に F3 というサービスとして自動的に実行されるよう永続化4され る。図 2.5-3 に当該レジストリを示す。 図 2.5-3 永続化に利用されたレジストリキー 4 実行ファイルを利用者が起動しなくとも自動的実行するよう設定すること。 HKEY_LOCAL_MACHINE¥SYSTEM¥currentControlSet¥services¥F3 Type REG_DWORD 0x110 Start REG_DWORD 0x2 ErrorControl REG_DWORD 0x0ImagePath REG_EXPAND_SZ "C:¥ProgramData¥F3¥googleUpdate.exe" 200 0 DisplayName REG_SZ F3
ObjectName REG_SZ LocalSystem Description REG_SZ F3 C:¥ProgramData¥F3>attrib SH C:¥ProgramData¥F3¥googleUpdate.exe SH C:¥ProgramData¥F3¥goopdate.dll SH C:¥ProgramData¥F3¥goopdate.dll.map SH C:¥ProgramData¥F3¥NvSmart.hlp C:¥ProgramData¥F3 のディレクトリ 2016/10/04 16:53 <DIR> . 2016/10/04 16:53 <DIR> .. 2010/11/21 06:29 116,648 googleUpdate.exe 2010/11/21 06:29 40,960 goopdate.dll 2010/11/21 06:29 108,628 goopdate.dll.map 2010/11/21 06:29 7,766 NvSmart.hlp ※SH:隠し属性のついたシステムファイ ル ※ 感染毎に日付が変更される
12 ImagePath として指定されているこのサービスの実行ファイルが 「C:¥ProgramData¥F3¥googleUpdate.exe」となっている。よって、この PC では、OS が起動されると自動実行されるサービス「F3」として、「googleUpdate.exe」が起動す る。その結果、不審通信が発生する仕組みとなっている。
2.5.1.
本検体の動作
本検体を動作させて、そのプロセスの動作を確認した。図 2.5-4 に示す。 「googleUpdate.exe」は実行されると、「svchost.exe」が起動され、さらに 「msiexec.exe」が派生して起動されている。 図 2.5-4 プロセス派生の様子 これらのプロセスにPlugX のコードがインジェクション5されて、不審通信等の機能が 実行される。「googleUpdate.exe」はすぐ停止されるため、継続実行するのは 「svchost..exe」と「msiexec.exe」となる。これら 2 つはどちらも正規のファイルであ るため、プロセス表示をさせても目立つことはない。PlugX は複数の機能があるが、自 動的に実行される動作としては、以下の2 点がある。 C2 サーバへの通信 キーロガー C2 サーバへの通信は、図 2.1-1 の通信が継続的に発生する。キーロガーは、利用者の キーボード入力をファイルに保存する。キーログファイル「NvSmart.hlp」はバイナリフ ァイルであるが、ASCII 表示で表示すると、図 2.5-5 のように日付、起動したプログラ ム、キーボード入力が記録されていることがわかる。 5 メモリ上に展開されたプログラムに別のプログラムコードをロードすること。マルウェ アが行う動作でよく見られる。13 図 2.5-5 キーログファイルに記録された内容 遠隔操作ウイルスと呼ばれるタイプのマルウェアには、このキーロガー機能が付与さ れていることが多い。実際にキーログファイルに記録されている内容を見ると、アプリ ケーションとパスワードの組み合わせや、メールと文章を入力したキー、本文そのもの の内容が盗み出されてしまうことが容易に想像される。 本章では、「不審通信先であるFQDN と IP アドレス」と「不審通信ファイルそのも の」の2 つに分けて分析をおこなった。ドメインと IP アドレスは同一の攻撃者が準備し たものと考えられ、この組織以外も同様の攻撃をしていた可能性があると推測した。「不 審通信ファイル」であるPlugX 検体については、実際に動作させた結果を解説した。 ドメインとIP アドレスについては、公開情報を確認することで多くの情報を得られ る。情報収集するためのサイトやサービスは、いくつか調べておくことをお奨めする。 PlugX の動作結果から、キーロガーがどのような情報を収集しているかを理解できたかと 思う。標的型攻撃で使われるマルウェアの脅威を感じ取っていただきたい。
14
3. 攻撃痕跡から攻撃者の挙動を推測する
標的型攻撃では、攻撃者は、ウイルスの作成(①)、攻撃に向けたメール作成(②、他 組織に潜入し、そこを踏み台としてなりすますケースもある)、標的組織へのメール送付 (③)、被害組織への初段のマルウェア感染(④)を成功させた後、その感染PC からの情 報収集(⑤)を経て、内部ネットワーク内で横移動(⑥)をおこない、他のPC やサーバ を侵害しながら目的の情報に到達(⑦)し、その情報を外部サーバへ送付する事で窃取 (⑧)する(図 2.5-1 参照)。 図 2.5-1 標的型攻撃の進み方一例 今回調査をおこなった感染PC には、この横移動を試行した痕跡が残されていた。この 横移動の攻撃活動を早期に検知することができれば、内部への侵攻や情報窃取の被害を未 然に回避することが可能となる。 本章では、これらの痕跡を以下の項に分けて分析し、その結果から挙動を推測する。 攻撃者が利用したフォルダとファイル フォルダ、ファイルの内容、スクリプトやバッチファイルの内容 攻撃者の行動を示唆する痕跡 OS のイベントログ、アプリケーションログ、その他実行に紐付くログ 攻撃のタイムライン タイムライン、カレンダー15
3.1. 攻撃者が利用したフォルダとファイル
3.1.1.
フォルダ構成
攻撃者が利用したと思われるフォルダは「¥ProgramData」、「¥ProgramData¥F3」、 「¥ProgramData¥SxS」、「¥ProgramData¥AYCai」、「¥Users¥Public¥Videos」、 「¥Users¥<ユーザー名>¥AppData¥Local¥Temp」、「¥Windows」の 7 つのフォルダであ った。表 3.1-1にフォルダ名と配置されたファイルの概要を記載する。 表 3.1-1 フォルダ フォルダ名 内容 ¥ProgramData taskeng.exe が配置されていた。 ¥ProgramData¥F3 新規作成フォルダ。PlugX の動作環境が配置されていた。 ¥ProgramData¥SxS 新規作成フォルダ。PlugX のクラッシュログが配置されていた。 ¥ProgramData¥AYCai 新規作成フォルダ。不審ファイルが配置されていた。 ¥Users¥Public¥Videos 攻撃ツール、スクリプト、実行ログなどのファイルが配置されていた。 ¥Users¥<ユーザー名> ¥AppData¥Local¥Temp ユーザー毎のテンポラリフォルダ。初期感染と思われるファイルが配置 されていた。 ¥Windows リモート実行プログラムが配置されていた。 配置されたファイルの内容から、フォルダ毎に特定の目的があるように思われる。 「¥ProgramData」および「¥ProgramData¥F3」「¥ProgramData¥SxS」 「¥ProgramData¥AYCai」は、フォルダ単位で特定のプログラムと、その実行環境を構 成するファイルが配置されていた。図 3.1-1 に示す永続化で利用されたレジストリにこれ らのフォルダに配置されたファイルが、3 つ指定されている。 図 3.1-1 レジストリに指定されたファイル これらが示す通り、「¥ProgramData」とそのサブフォルダは、永続化のための仕組み を攻撃者が配置したものといえる。対して「¥Users¥Public¥Videos」は、攻撃ツールと それらを利用するためのスクリプトやバッチファイル、さらには実行結果を記録したファ HKEY_CURRENT_USER¥Software¥Microsoft¥Windows¥CurrentVersion¥Run taskeng REG_SZ "C:¥ProgramData¥taskeng.exe"F3 REG_SZ "C:¥ProgramData¥F3¥googleUpdate.exe" 200 0 AYCais REG_SZ C:¥ProgramData¥AYCai¥AYCRunSC.exe
16 イルが複数配置されていた。いわば攻撃者の「作業場所」であったような印象を受ける。 「¥Users¥<ユーザー名>¥AppData¥Local¥Temp」は、ログオンユーザー毎に生成され るフォルダで、OS が一時利用することを前提にしているものなので、様々なアプリケー ションが利用するが、その中で今回の初期感染で利用されたと思われるファイルが発見で きた。「¥Windows」フォルダには、リモート実行プログラムが配置されていた。 次項では、これらのフォルダに配置されたファイルについて解説する。
3.1.2.
配置されたファイル
ファイルは様々な種類が配置されていたので、便宜上、表 3.1-2 のように分類する。 表 3.1-2 ファイル分類 プログラム 実行形式ファイル。 スクリプト スクリプト。実行可能。 バッチファイル バッチファイル。実行可能。 データ 実行形式でないファイル。 テキスト 実行形式でないファイルのうち、テキスト形式で記述されたもの。 注目すべきなのは、スクリプトとバッチファイルが配置されていることである。一般的 にスクリプトとバッチファイルを使う目的は、「一括処理」「正確性」といった手作業での 作業効率や精度を上げるために利用される。攻撃者は感染組織の内部環境に合わせて、こ れらのスクリプトやバッチファイルを準備したものと推測される。¥ProgramData フォルダのファイル
「¥ProgramData」は、今回のレポートの発端のひとつである不審通信ファイル、 「taskeng.exe」が配置されていたフォルダである。 表 3.1-3 ProgramData フォルダ ファイル名 分類 概要 ¥ProgramData¥taskeng.exe プログラム 不審通信ファイル。永続化されている。 ¥ProgramData¥win3dx.DLL プログラム 不審DLL ファイル。実行履歴なし。 このフォルダはサブフォルダのみ配置され、ファイルは配置されないことが一般的だ が、DLL ファイル「win3x.DLL」が配置されていた(表 3.1-3)。このプログラムの保持17 しているリソース情報6を図 3.1-2 に示すが、アイコンに関する言語環境が 「LANG_CHINESE_SUBLANG_CHINESE_SIMPLEFIED」とあるように、これらのプ ログラムは中国語環境で生成された可能性がある。これは「taskeng.exe」も同様であった ため、実行履歴はないものの、攻撃者が「taskeng.exe」と同じく、何らかの意図で配置し た可能性がある。 図 3.1-2 リソース情報
¥ProgramData¥F3 フォルダのファイル
このフォルダには前章で確認した、不審通信ファイルのもうひとつのファイル 「googleUpdate.exe」とその PlugX 動作環境ファイルが配置されていた(表 3.1-4)。 表 3.1-4 \ProgramData/F3 フォルダ ファイル名 分類 概要 ¥ProgramData¥F3¥googleUpdate.exe プログラム 不審通信発生、永続化されている。 ¥ProgramData¥F3¥goopdate.dll プログラム PlugX として動作。 ¥ProgramData¥F3¥goopdate.dll.map データ PlugX としての動作に関連。 ¥ProgramData¥F3¥NvSmart.hlp データ PlugX によるキーログファイル。 2 章では、図 2.5-5 のキーロガーの動作が確認でき、ログファイルに記録されていた が、感染PC に残されていた同ファイルの「NvSmart.hlp」ファイルは、異なるフォーマ ットでの記録となっており、極めて小さいファイルサイズとなっていた。後述するウイル ス対策ソフトによる検知の影響かも知れない。 6 実行ファイルに埋め込まれているアイコン等のデータのこと。 Resource entries ================================================================================ Name RVA Size Lang Sublang Type---
RT_ICON 0x120d0 0x128 LANG_CHINESE SUBLANG_CHINESE_SIMPLIFIED GLS_BINARY_LSB_FIRST RT_ICON 0x121f8 0x2e8 LANG_CHINESE SUBLANG_CHINESE_SIMPLIFIED data
RT_GROUP_ICON 0x124e0 0x22 LANG_CHINESE SUBLANG_CHINESE_SIMPLIFIED MS Windows icon resource - 2 icons, 16x16, 16-colors
18
¥ProgramData¥SxS フォルダのファイル
PlugX は動作時に発生したクラッシュログを出力するバージョンがある。公開情報か ら、フォルダ名とファイル名が表 3.1-5 と同件であるため、このファイルもクラッシュロ グであると推測される。 表 3.1-5 \ProgramData\SxS フォルダ ファイル名 分類 ファイル分類と概要 ¥ProgramData¥SxS¥bug.log テキスト PlugX のクラッシュログ。日付、メモリと思わ れる情報が記録されている。¥ProgramData¥AYCai フォルダのファイル
このフォルダも、永続化されているレジストリ(図 3.1-1)で指定されているが、ファ イル「AYCRunSC.exe」が存在しなかった。表 3.1-6 に一覧を示す。ファイルの名称や構 成ファイル名から、韓国のセキュリティ対策ソフトである「ALYac」を模している可能性 がある。 表 3.1-6 \ProgramData\AYCai フォルダ ファイル名 分類 概要 ¥ProgramData¥AYCai¥itd データ 用途不明。 ¥ProgramData¥AYCai¥ptl.aym プログラム 単体で実行は不可。 ¥ProgramData¥AYCai¥ptl.ayx データ ptl.aym と関連があると思われる。 ¥ProgramData¥AYCai¥abcdefghijklmnopqr データ 用途不明。¥Users¥Public¥Video フォルダのファイル
このフォルダには、先にあげたような永続化で利用されていたファイルはなく、攻撃者 が利用したと思われる攻撃ツールやスクリプトが配置されていた。表 3.1-7 にファイル一 覧を示す。 表 3.1-7 Users\Public\Videos フォルダ ファイル名 分類 概要 ¥Users¥Public¥Videos¥wce.EXE プログラム パスワード奪取ツール。 ¥Users¥Public¥Videos¥gsecdump.exe プログラム パスワード奪取ツール。 ¥Users¥Public¥Videos¥TIOR64.exe プログラム 権限奪取ツール。 ¥Users¥Public¥Videos¥Win7Elevate 64.exe プログラム 権限奪取ツール。19 ¥Users¥Public¥Videos¥Win7Elevate Dll64.dll プログラム 権限奪取ツール。 ¥Users¥Public¥Videos¥tior.exe プログラム 権限奪取ツール。 ¥Users¥Public¥Videos¥domain.exe プログラム ¥ProgramData¥taskeng.exe と 同 じ 動作。taskeng.exe を生成する。 ¥Users¥Public¥Videos¥ss.vbs スクリプト 感染環境に合わせて作成。 ¥Users¥Public¥Videos¥u.bat バッチファイル 感染環境に合わせて作成。 ¥Users¥Public¥Videos¥ss.bat バッチファイル 感染環境に合わせて作成。 ¥Users¥Public¥Videos¥server.vbs スクリプト 感染環境とは関係ないように思われる。 ¥Users¥Public¥Videos¥h.bat バッチファイル 感染環境に合わせて作成。 ¥Users¥Public¥Videos¥s.txt テキスト 攻撃者の行った処理の実行結果。 ¥Users¥Public¥Videos¥pc.txt テキスト 攻撃者が整理した内部端末のリスト。 ¥Users¥Public¥Videos¥type テキスト 攻撃者の行った処理の実行結果。 これらのファイル配置には、以下の特徴がある。 パスワードや権限奪取の攻撃ツールがそれぞれ複数配置されている。 感染 PC の環境に合わせられていないスクリプトがある。 スクリプトやファイルの実行ログ等、攻撃者が直接利用したと思われる記録が残さ れている。 攻撃ツールの複数配置と、環境に合わせられていないスクリプトがあることから、これら は「攻撃ツールセット」のようにまとめて感染PC 内に配置したと思われる。また、この フォルダに残されていた実行ログ等の記録から見て、攻撃者の作業そのままが残されてい るような印象がある。「type」ファイルはアカウントのパスワードハッシュと思われる内 容が記録されていた。 図 3.1-3 と図 3.1-4 に表 3.1-7 のパスワード奪取ツールをテスト環境で実行した例を 示す。 図 3.1-3 gsecdump 実行例 gsecdump.exe -l DefaultPassword DPAPI_SYSTEM 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... ... 00 00 00 00 00 00 00 00 00 00 00 00 ... ????_?
20 図 3.1-4 wce 実行例 攻撃者はこのようなツールを使って、パスワードやパスワードハッシュを取得し、他 PC のパスワード類推や侵入を行う。 スクリプト、バッチファイルの内容については、次の項で詳しく解説する。
¥Users¥<ユーザー名>¥AppData¥Temp フォルダのファイル
「¥Users¥<ユーザー名>¥AppData¥Temp」フォルダには、「taskeng.exe」と同一ハッ シュ値7の「1.exe」ファイルが存在していた(表 3.1-8)。感染 PC の通常利用ユーザーの テンポラリフォルダであり、目立たないファイル名という点、実行すると「taskeng.exe」 を作成し永続化するという点から、マルウェア感染の契機となったものと推測される。 表 3.1-8 Users\ユーザー名\AppData\Temp フォルダ ファイル名 ファイル分類と概要 ¥Users¥<ユーザー名> ¥AppData¥Local¥Temp¥1.exe プログラムtaskeng.exe と同ハッシュ値。¥Windows フォルダのファイル
「¥Windows」フォルダに、PSEXESVC.EXE というプログラムが配置されていた。これ はMicrosoft が配布しているツールであるが、標的型攻撃でもよく利用される。このプロ グラムはPSEXEC.EXE というリモートでプログラムを実行させるためのサービスであ り、これを配置すればリモートから任意のプログラムを実行することが可能になる。 表 3.1-9 Windows フォルダ ファイル名 ファイル分類と概要 ¥Windows¥PSEXESVC.EXE プログラム。Microsoft 配布ツール。 7ファイルの同一性を評価するための値として利用。データに一定の計算手順によって算出 する。MD5、SHA1、SHA256 がよく使われる。 >wce -w user01¥pc01:12345678 PC01$¥WORKGROUP:1234567821
3.1.3.
スクリプト・バッチファイルと関連ファイル
本項では、攻撃者が生成したと思われる「スクリプト・バッチファイル」と「関連ファ イル」の内容を解説する。表 3.1-7 から抜き出したものに内容を示した表を表 3.1-10 に 示す。 表 3.1-10 スクリプト・バッチファイルと関連ファイル ファイル名 分類 ファイル分類と概要 ¥Users¥Public¥Videos¥ss.vbs スクリプト ss.bat を実行する vbs。 ¥Users¥Public¥Videos¥server.vbs スクリプト 感染環境にない bat ファイルが指定されてい る。 ¥Users¥Public¥Videos¥u.bat バッチファイル ネットワーク経由コマンド実行する。¥Users¥Public¥Videos¥ss.bat バッチファイル pc.txt をもとに s.exe および u.bat を実行する ¥Users¥Public¥Videos¥h.bat バッチファイル 感染環境に合わせて作成。 ¥Users¥Public¥Videos¥pc.txt テキスト 攻撃者が作成したと思われる内部ネットワー クに存在するPC リスト。 ¥Users¥Public¥Videos¥s.txt テキスト 攻撃者の実行ログ。 これらのファイルの内容を分析した結果、攻撃者が本環境用にカスタマイズしたであろ うバッチファイルは「h.bat」、「ss.bat」、「u.bat」である。この 3 つのバッチファイルの 実行には、攻撃者が何らかの方法で入手、整理した内部ネットワークに存在するPC の一 覧、「pc.txt」がその実行対象として指定されていた。
内部ネットワーク
PC リスト
「pc.txt」の内容を図 3.1-5 に示す。 図 3.1-5 内部ネットワークの PC リストの内容 このファイルには、100 以上のコンピュータ名が記載されていた。感染 PC からアクセ スできるネットワークの情報やローカルファイル等から、内部ネットワークに存在する PC のコンピュータ名をリスト化したものと思われる。今回の組織では Active Directory が導入されており、Active Directory 環境ではドメイン参加している PC のコンピュータ PC-01 PC-02 PC-03 PC-0522 名の名前解決に内部DNS(ドメインネームシステム)を構築するため、他 PC の情報はこ のDNS から入手した可能性がある。
h.bat
「pc.txt」を読み込んで、図 3.1-6 に示す「h.bat」は動作するように作られていた。こ れは「pc.txt」に記された PC にネットワーク経由でローカル管理者アカウントである admistrator で IPC 共有という共有リソースへ接続するようなものとなっていた。使われ ているコマンドはWindowsOS 標準コマンドの「net use」が利用されていた。図 3.1-6 h.bat の内容 IPC 共有は、システム管理アクセスを可能とするものであるため、攻撃に利用されるこ とがある。攻撃者は内部ネットワークのPC へ IPC 共有への接続を試行するためにこのバ ッチファイルを作成したものと思われる。
ss.bat
「ss.bat」も先の「h.bat」と同じく「pc.txt」を読み込んで動作する構成となってい る。「C:¥users¥public¥videos¥s.exe」を、ローカル管理者アカウント administrator を 指定し、いくつかのパラメータを渡して実行させ、その結果を「s.txt」として保存するよ うになっている(図 3.1-7)。 図 3.1-7 ss.bat の内容 これらのファイルの関連を図 3.1-8 に示す。for /f %%i in pc.txt) do net use ¥¥%%i¥ipc$ /u:%%i¥Administrator
for /f %%i in (pc.txt) do (
c:¥users¥public¥videos¥s.exe %%i %%i¥Administrator :123456789012345678901234567890 1234 Win32Update u.bat >>c:¥users¥public¥videos¥s.txt
23 図 3.1-8 ss.bat と関連ファイル しかし、このバッチファイルに記述されている「s.exe」は、表 3.1-7 で示す通り、 「¥Users¥Public¥Videos」には存在していない。後述するが、このファイルはウイルス 対策ソフトで検知され、移動させられていた。しかし、実行結果ファイルである「s.txt」 が存在することから、このバッチファイル「ss.bat」は、一度は実行されたと考えられ る。
u.bat
「ss.bat」に記載がある「u.bat」を 図 3.1-9 に示す。「u.bat」は、ローカルアカウン ト「demouser」を net user コマンドで作成し、ローカル管理者権限グループ「administrators」に追加するという内容となっている。 図 3.1-9 u.bat の内容
ss.vbs
表 3.1-10 の通り、スクリプトは2 つあるが、どちらも wscript 経由で bat ファイルを起 動する内容だった。図 3.1-10 に「ss.vbs」の内容を示す。バッチファイル「ss.bat」をウ ィンドウ非表示で起動しているだけの動作である。wshshell を利用したのは、コマンドプ ロンプトを非表示で動作させることが狙いだったと推測される。net user demouser user@example /add /y net localgroup administrators demouser /add
24 図 3.1-10 ss.vbs の内容 もう一方の「server.vbs」は、ほぼ同じ記述だが、バッチファイル「server.bat」を呼び 出すようになっていたが、同ファイルは存在していなかったため、このスクリプトは本環 境に合わせて作られたものではないと推測される。
s.txt
図 3.1-11 に示す「s.txt」は、記録された PC 名が実在すること、「ss.bat」の内容にお およそ合致しているように見受けられることの2点から、「ss.bat」の実行結果であると推 測された。 図 3.1-11 s.txt の内容 on Error Resume nextset wshshell=createobject("wscript.shell") a=wshshell.run("ss.bat",0)
[+] Remote Server PC-12 resolved as 192.168.1.2
[+] Sending SMB Authentication Handshake [-] SessionSetupAndX Completed [-] Authentication against Remote Host Failed (Error: 0x00000001
[+] Remote Server PC-13 resolved as 192.168.1.3
[+] Sending SMB Authentication Handshake [+] Authentication against PC-13 Succeed as PC-03¥Administrator
[+] Connecting against ¥¥PC-13¥IPC$
[+] Trying to connect to admin$
[+] Creating Remote File u.bat under admin$ [+] Writing File u.bat into admin$ (82 bytes)
[+] Opening Remote Service Control Manager pipe ¥svcctl [+] Opening Remote Service Control Manager (Creating Service)
[+] Creating Remote Service [+] Opening Remote Service [+] Starting Remote Service... [+] Success!
Please Check PC-13
① PC-12 に対する実行結果
25 記録されている内容から見て、PC 単位に下記処理を実行したものと思われる。 PC のローカル administrator を利用し SMB 認証 IPC 共有への接続 admin 共有への接続 u.bat の配置 サービスコントロールマネージャ接続 何らかのサービス追加 何らかのサービス起動 PC によって、これらの処理結果が異なったように記録されていた。例えば一部抜粋し た図 3.1-11 では、①はローカルadministrator での接続に失敗、②は実施した処理は成功 8したように思われる。 8 成功した記録がある PC を調査したが、同件のマルウェア、記録されたようなローカル ユーザーの生成など不審点は見つからなかった。
26
3.2. 攻撃者の行動を示唆する痕跡
本項では、攻撃者の行動に関連するような箇所を列挙する。Windows OS のイベントロ グ、レジストリ更新、Windows エラーレポートといった Windows OS が残した記録、ウ イルス対策ソフト等のアプリケーションが残した記録、PlugX が残したと思われるクラッ シュログ、それぞれに記録されていた内容を解説する。3.2.1.
Windows OS が記録したもの
イベントログ
イベントログには OS の様々な動作が記録されている。過去の動作を確認するにはこのイ ベントログの調査がかかせない。また、この感染PC には Windows 標準のセキュリティ 対策アプリケーションである「Windows Defender」が有効化されており、イベントログ にも出力されていた。これらのイベントログを、感染PC で発見できたマルウェアのファ イル名や、関連したフォルダ名等のキーワードで確認すると、下記2 点のイベントが発見 できた。 表 3.2-1 関連イベント 発生時間 概要 2014-05-21 10:03 ¥ProgramData¥taskeng.exe でユーザーアカウント制御(UAC)イベントが発生。 2014/-05-22 10:13 ¥Users¥Public¥Videos¥PwDump7.exe を Windows Defender が Hack Tool として検知。10:13 から 10:21 までの間に 4 回検知。
2014 年 5 月 21 日に「taskeng.exe」の動作によるユーザーアカウント制御(UAC)イ ベントが発生しているため、「taskeng.exe」が実行されたと思われる。2014 年 5 月 22 日 にはWindows Defender によって Hack Tool としての検知が記録されていた。また、イベ ントログとは別のファイルに記録されているWindows Defender 自体のログにも、同日の 記録(図3.2-1)があり、プロセス ID9(図中ではpid と表記)が記録されていることか ら、実行時に検知されていたと思われる。
図 3.2-1 Windows Defender Log 9 WindowsOS が実行中のプロセスを一意に識別するために付与する識別子。 138838|file|C:¥Users¥Public¥Videos¥PwDump7.exe 138838|process|pid:4656 138838|process|pid:4636 138838|process|pid:2644 138838|process|pid:2448
27
タスクスケジューラ
タスクスケジューラにも実行記録が残されていた。表 3.2-2 に示す通り、タスク名 「At1」に、今回のマルウェアの一種である「¥Users¥Public¥Videos¥domain.exe」が登 録されていた。当該プログラムを2014 年 6 月 26 日の 11 時 16 分に 1 度だけ実行するよ う登録されている。タスク名の「At1」は名称未指定で登録した際に自動的に付与される ものであること、スケジュール種類が「一度だけ」であることから、タスクスケジューラ を登録できるかを試用したものではないかと思われる。また、この際に結果をテキスト出 力したものが図3.1-1 の「530.txt」と推測される。なお、前回の結果「267009」は「現在 タスクを実行中です」という意味である。 表 3.2-2 タスクスケジューラ抜粋 タスク名 At1 次回の実行時刻 N/A 前回の実行時刻 2014/06/24 11:16:00 前回の結果 267009 実行するタスク cmd /c ¥¥<PC 名>¥c$¥users¥public¥videos¥domain.exe スケジュールの種類 一度だけ 開始時刻 11:16:00 開始日 2014/06/24レジストリ更新
レジストリの更新記録からは様々な情報が確認できるが、マルウェア感染に関しては、 永続化を行ったタイミングで何らかの記録があるケースがある。2014 年 6 月 26 日に永続 化を行うレジストリ「HKU/Software/Microsoft/Windows/CurrentVersion/Run」に追加され ていた。このレジストリ更新は、図 3.1-1の通り、攻撃者が更新したものと思われる。 表 3.2-3 レジストリ更新概要 発生時間 概要2014-06-26 9:23 Key name: HKEY_USER/Software/Microsoft/Windows/CurrentVersion/Run Last Written 更新
Windows Error Report
Windows OS には、クラッシュしたアプリケーションの情報を記録する Windows Error Report という機能があるが、この情報も実行記録として利用できる。Windows Error Report から以下フォルダが確認できた。
28
図 3.2-2 WER ディレクトリ抜粋
フォルダの最終更新時間から、このタイミングで「s.exe」「taskeng.exe」が実行された と考えられる。また、これらのWindows Error Report フォルダ内には、さらに詳細の情 報が記録されており、「s.exe」は 2014 年 6 月 13 日時点では「¥Users¥Public¥Videos」フ ォルダに存在したことが記されていた。
3.2.2.
MasterFileTable に記録されていたもの
Windows OS のファイルシステムである NT File System(NTFS)には、Master File Table(MFT)というファイル個々のエントリー情報(ファイルの所在地と属性情報等) が記録されている。この記録から、ファイルの生成や更新の日付がより詳しく把握でき るケースがある。今回MFT 情報から、攻撃者の挙動に繋がる情報が取得できたファイル は以下の5 ファイルである。 表 3.2-4 更新日が攻撃者の挙動に関連するファイル ファイル名 推測される挙動 ¥Users¥<ユーザー名> ¥AppData¥Local¥Temp¥1.exe 初期感染。 ¥Users¥Public¥Videos¥type パスワードハッシュを奪取した。 ¥Users¥Public¥Videos¥pc.txt 内部ネットワークのPC リストを作成した。 ¥Users¥Public¥Videos¥s.txt ss.bat を実行した。 ¥Users¥Public¥Videos¥530.txt ジョブスケジューラに登録した。
¥Users¥<ユーザー名>¥AppData¥Local¥Temp¥1.exe
「テンポラリ領域の不審ファイル」という観点の調査で発見した。今回のマルウェアで 利用された「taskeng.exe」と同じハッシュ値を持つため、同一ファイルと思われる。マ ルウェア感染の典型的な挙動である「実行時に自分自身を別フォルダにコピーし永続化 する」動作をとったものと考えられる。そして表 3.2-5 の通り、ファイルの生成時間 が、初期感染の想定時間と推測した。なお、ファイルはすでに存在しないが、MFT 情報 2014/06/13 18:09 <DIR> AppCrash_s.exe_12345678901234567890123456789012345678_12345678 2014/06/30 15:28 <DIR> AppCrash_taskeng.exe_12345678901234567890123456789012345678_12345678 2014/05/23 16:10 <DIR> AppCrash_taskeng.exe_12345678901234567890123456789012345678_1234567829 に、同じフォルダ、同じ時間に「1.docx」というファイルが生成された記録があったた め、初期感染はWord 文書に関連して行われた可能性がある。 表 3.2-5 初期感染の想定時間 日付 内容 2014-05-20 17:37 ¥Users¥<ユーザー名>¥AppData¥Local¥Temp¥1.exe が生成。 2014-05-20 17:37 ¥Users¥<ユーザー名>¥AppData¥Local¥Temp¥1.docx が生成。
¥Users¥Public¥Videos¥type
ファイル内容から、パスワードハッシュの取得がされたものであり、値の再利用のため にファイルに書き出したと想定される。作成日と更新日は同じ情報が記録されていた。 そして、表 3.2-6 の通り、当該ファイルの生成時間が、パスワード奪取ツールの実行時 間と推測した。 表 3.2-6 パスワード奪取ツールの実行想定時間 日付 内容 2014-06-04 13:44 ¥Users¥Public¥Videos¥type が生成。¥Users¥Public¥Videos¥pc.txt
このファイルは、3.1.3 に記した通り、横移動のためのバッチファイル「h.bat」 「ss.bat」で指定された実行対象 PC のリストと思われる。よって、先行して作成された ものと考えられる。また、「pc.txt」と「s.txt」に記載されている PC に一致がなかった ため、「pc.txt」は実行後に更新された可能性がある。MFT 情報から、下記表 3.2-7 の通 り、初回生成と更新を推測した。 表 3.2-7 PC リストの初回生成・更新想定時間 日付 内容 2014-06-13 16:31 ¥Users¥Public¥Videos¥pc.txt が初回生成。 2014-06-25 16:56 ¥Users¥Public¥Videos¥pc.txt が更新。¥Users¥Public¥Videos¥s.txt
ファイル内容と「ss.bat」の関係から、本ファイルの生成日は、「ss.bat」の実行日と推 測できる。表 3.2-8 の通り、ファイルの生成時間が、パスワード奪取ツールの実行時間 と推測した。また、本ファイルはこの日付以降に更新記録はなかった。30 表 3.2-8 「ss.bat」の実行想定時間 日付 内容 2014-06-13 16:56 ¥Users¥Public¥Videos¥s.txt が生成。
¥Users¥Public¥Videos¥530.txt
本ファイルの内容については、すでに表 3.2-2 に記載しているが、このファイルの生成 日は、先にあげたタスクスケジューラの実行前と思われる。表 3.2-9 が実行想定時間であ るが、タスクスケジューラの実行日の2016/6/24 の前日であり、想定と合致している。 表 3.2-9 タスクスケジューラ実行想定時間 日付 内容 2014-06-23 17:57 ¥Users¥Public¥Videos¥530.txt が生成。3.2.3.
アプリケーションが記録したもの
感染端末には、ウイルス対策ソフトがインストールされており、図 3.2-3 のように、検 知が記録されていた。 図 3.2-3 ウイルス対策ソフトログ(抜粋) 2014/5/21 10:49 より複数回、「¥ProgramData¥F3¥NvSmart.hlp」が PlugX として検 知されているため、PlugX はこの時点(2014/5/21)では実行されていたと思われる。こ れらの処理結果は、「10:(クリーニング失敗で移動を表す)」とあるが、この後も先にあげ 20140521<;>1049<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1107<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1108<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1110<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1113<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1122<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1124<;>Mal_PlugX<;>81<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1708<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140521<;>1729<;>Mal_PlugX<;>10<;>1<;>0<;>C:¥ProgramData¥F3¥NvSmart.hlp<;> 20140522<;>1044<;>TSPY_PLUGX.EMP<;>1<;>1<;>0<;>C:¥Users¥Public¥Videos¥CmdBrowserPass.exe<;> 20150406<;>1704<;>TROJ_AGENT.YMNEB<;>1<;>1<;>0<;>C:¥Users¥Public¥Videos¥s.exe<;>31 たようなPlugX の動作を示唆するログや、不審通信の通信記録は存在するため、PlugX の 動作全てを停止できたわけではなかったと思われる。 また、「¥Users¥Public¥Videos¥CmdBrowserPass.exe」と 「¥Users¥Public¥Videos¥s.exe」を検知した処理結果は「1:(移動成功を表す)」とある が、感染PC の検疫フォルダには「s.exe」のみ保存されていた。
3.2.4.
その他実行を示唆するもの
¥ProgramData¥SxS¥bug.log
その他実行を示すログとして、マルウェアが生成したファイルではあるが、 「¥ProgramData¥SxS¥bug.log」もそのひとつといえる。クラッシュした記録があると いうことは、そのタイミングで実行されていたと考えられる。よって、記録された日時 (図 3.2-4)には、なんらかのPlugX の動作を実行したものと考えられる。 図 3.2-4 bug.log 2 0 1 4 - 0 7 - 2 8 1 0 : 3 2 : 5 5 : E N a m e : * , E A d d r : 0 x 1 2 3 4 5 6 7 8 , E C o d e : 0 x 1 2 3 4 5 6 7 8 2 0 1 4 - 0 7 - 2 8 1 0 : 3 2 : 5 5 : E N a m e : * , E A d d r : 0 x 1 2 3 4 5 6 7 8 , E C o d e : 0 x 1 2 3 4 5 6 7 8 2 0 1 4 - 1 0 - 0 1 1 0 : 2 9 : 0 6 : E N a m e : * , E A d d r : 0 x 1 2 3 4 5 6 7 8 , E C o d e : 0 x 1 2 3 4 5 6 7 8 2 0 1 4 - 1 2 - 0 1 1 4 : 3 6 : 1 0 : E N a m e : * , E A d d r : 0 x 7 4 F C 9 3 4 2 , E C o d e : 0 x C 0 0 0 0 0 0 5 , 2 0 1 4 - 1 2 - 0 1 1 4 : 3 6 : 1 0 : E N a m e : * , E A d d r : 0 x 7 7 4 E A E 4 2 , E C o d e : 0 x C 0 0 0 0 7 1 C ,32
3.3. 攻撃のタイムライン
3.3.1.
攻撃の段階
これまで記載した各情報を総合的にまとめて、想定される攻撃のタイムライン10を作成 した。まず、図 3.3-1 に攻撃の段階を示す。 図 3.3-1 攻撃の段階 ダウンローダーに初期感染した翌日にPlugX に 2 次感染し、同日から 2 日間でパスワー ド奪取ツール等の配置と実行を行う情報奪取を開始している。その後約3 週間後に横移動 準備として、各種スクリプトの配置と実行等を行い活動範囲の拡大を図ったと思われる。 それから約2 週間の間、いくつかの活動が見られたが、2014 年 6 月末以降は特に目立っ た活動痕跡は見られなかった。3.3.2.
攻撃の想定タイムライン
表 3.3-1 は、攻撃の段階にそれぞれの事象を記載した「攻撃の想定タイムライン」であ る。攻撃者の行動が垣間見られると思う。表の中の表現について補足すると、「配置」は ファイルのMFT 情報から、ファイルがそのフォルダに配置されたと考えられる時間を記 し、「生成」はファイルの性質上、何らかの実行結果と思われるファイルの生成と考えら れた時間を記した。「更新」はファイルの更新や値の更新が行われた時間を記している。 10 事象を時系列にならべたもの。33 表 3.3-1 攻撃の想定タイムライン 日付 内容 2014-05-20 17:37 初期感染。¥Users¥<ユーザー名>¥AppData¥Local¥Temp¥1.exe が生成。この タイミングで1.exe が実行され、¥ProgramData¥taskeng.exe は永続化。 2014-05-21 09:52 ツールの配置を開始。 ¥Users¥Public¥Videos¥gsecdump.exe が配置される。 2014-05-21 10:01 ¥Users¥Public¥Videos¥wce.exe が配置される。 2014-05-21 10:03: ¥ProgramData¥taskeng.exe で UAC イベントが発生。 2014-05-21 10:30~ 2 次感染。PlugX の実行環境生成。 ¥ProgramData¥F3¥googleUpdate.exe ¥ProgramData¥F3¥goopdate.dll ¥ProgramData¥F3¥ goopdate.dll.map が配置される。 2014-05-21 10:49 ¥ProgramData¥F3¥NvSmart.hlp がウイルス対策ソフトで「Mal_PlugX」として 検出・移動される。PlugX が実行され googleUpdate.exe は永続化。 2014-05-21 17:29 ¥ProgramData¥F3¥NvSmart.hlp 更新。 2014-05-22 09:34~ ¥Users¥Public¥Videos¥TIOR64.exe ¥Users¥Public¥Videos¥Win7Elevate64.exe ¥Users¥Public¥Videos¥Win7ElevateDll64.dll ¥Windows¥PSEXESVC.EXE が配置される。 2014-05-22 10:13 ツールによる情報奪取開始。
¥Users¥Public¥Videos¥ PwDump7.exe が Windows Defender で検知される。 2014-05-23 13:41~ ¥Users¥Public¥Videos¥gsecdump.exe ¥Users¥Public¥Videos¥Win7Elevate64.exe が配置される。 2014-06-04 13:44 ¥Users¥Public¥Videos¥type が生成される。(パスワード奪取を実行) 2014-06-06 10:10 ¥Users¥Public¥Videos¥ptl.aym ¥Users¥Public¥Videos¥ptl.ayx が配置される。 2014-06-09 10:20 ¥Users¥Public¥Videos¥domain.exe が配置される。 2014-06-09 16:23 ¥Program Files (x86)¥AntiVirus¥Client¥SUSPECT¥s.exe
が生成される。(ウイルス対策ソフトでの検知) 2014-06-11 14:47 ¥Users¥Public¥Videos¥u.bat が配置される。 2014-06-13 11:14 ¥Users¥Public¥Videos¥h.bat が配置される。 2014-06-13 16:27~ ¥Users¥Public¥Videos¥ss.vbs ¥Users¥Public¥pc.txt ¥Users¥Public¥Videos¥ss.bat が配置される。
34 2014-06-13 16:39~ 奪取した情報をもとに横移動準備を開始。 ¥Users¥Public¥Videos¥s.txt が生成される。 Software/Microsoft/WindowsScriptHost/Settings が更新される。(ss.vbs の実行) 2014-06-19 16:18 ¥Users¥Public¥Videos¥server.vbs が配置される。 2014-06-23 17:57 ¥Users¥Public¥Videos¥530.txt が生成される。タスクスケジューラの登録。 2014-06-24 11:15 ¥Windows¥Tasks¥At1.job が生成される。タスクスケジューラのジョブが実行。 2014-06-25 16:50 ¥Users¥Public¥pc.txt が更新される。さらなる横移動準備を開始。 2014-06-26 09:23~ ¥ProgramData¥AYCai¥ptl.aym ¥ProgramData¥AYCai¥ptl.ayx ¥ProgramData¥AYCai¥abcdefghijklmnopqr が配置される。 Software/Microsoft/Windows/CurrentVersion/Run が更新。3 つ目のプログラムが 永続化。 2014-06-30 17:52 ¥ProgramData¥AYCai¥itd が配置される。 2014-07-28 10:32 ¥ProgramData¥SxS¥bug.log が生成される。PlugX のクラッシュ。 2014-12-17 14:40 ¥ProgramData¥SxS¥bug.log が生成される。PlugX のクラッシュ。 2014 年 5 月 20 日に「1.exe」によって初期感染とダウンローダーの永続化が発生、翌 日の5 月 21 日には攻撃ツールの配置と PlugX 実行環境の配置、またその翌日にパスワー ド奪取ツールの実行があった。6 月 4 日にはパスワード奪取の実行があり、数日おいて 6 月13 日に横移動準備のツール配置や実行が行われている。6 月 23 日にタスクスケジュー ラに登録があり、数日後に3 つ目のプログラム永続化が行われている。その後いくつか PlugX の実行記録はあるが、12 月 17 日以降はその痕跡は発見されなかった。初期感染か らPlugX の配置までが短時間であること、パスワード奪取してからスクリプト配置まで少 し時間をおくことなど、攻撃者の挙動が垣間見られる。
3.3.3.
カレンダー
攻撃痕跡のあった日を当時のカレンダーで確認した。2014 年 5 月、6 月での攻撃実行日 は、図 3.3-2 の通り平日であり、時間もおおよそ一般的な営業時間内での時間である。35 図 3.3-2 2014/5-6 のカレンダーと攻撃実行日 遠隔操作が主なアクセス方法だったと思われるので、当然といえるが、今回痕跡から発 見された攻撃は平日、営業時間内での活動だったと思われる。 本章では、攻撃者が配置したフォルダやファイルに関する分析、特にバッチファイルや その関連ファイルにはその内容を示し、解説した。また、OS やアプリケーションからの ログ、MFT といったファイルの属性情報を考慮に加えて、攻撃者の攻撃痕跡を時系列に 並べてタイムラインを作成した。 個々の攻撃痕跡については、感染嫌疑時に同じような痕跡がないかを調査する際の参考 にしてほしい。また、組織内のPC で、標的型攻撃の可能性があるセキュリティリスクが 検知された場合は、このタイムラインを参考にして、その前後でこれらの兆候がないかを 確認してほしい。
36
4. 攻撃の検知と調査の手法を検討する
本章では、これまで分析した感染PC での攻撃痕跡をふまえて、以下3つのテーマを取 上げる。 PC での検知における課題と対策 ログに関する考慮事項 感染嫌疑の調査例 今回のケースで見られたように、PC のログ等に出力される小さな検知にいかに気付く かを、PC 利用者からの検知という観点で、課題と対策を考察する。次に、調査において 重要な対象であるログについていくつか考慮事項をあげ、最後に、感染嫌疑時の調査の一 例として、必要と思われる調査の概要を紹介する。4.1. PC での検知に関する課題と対策
本項では、PC での検知に関する課題と対策を、下記 2 項目で解説する。 ウイルス対策ソフトの課題と対策 イベントログの課題と対策4.1.1.
ウイルス対策ソフトの課題と対策
ウイルス対策ソフトの検知に適切な対応が取れなかった理由としては、おおよそ以下の 2 点が考えられる。 利用者への通知に気付かなかった。 検知名が攻撃とは思わなかった。 ウイルス対策ソフトでセキュリティリスクが検知された場合、利用者のデスクトップ画 面の最前面にリスク検知のアラートがポップアップ表示されるはずだ。しかし、その表示 された内容を「すぐに」「正しく」理解するのは、困難だと思われる。ポップアップ表示 が突然表示されると驚いてしまうことと、その表示は普段見慣れない単語や難解な記述で あることから、すぐには状況把握できないのではないかと思われる。37