17章
Hands-on-2
ここでは、USNジャーナルとMFTから、サイバー攻撃によるファイル操作履歴を分析するハンズオンを行います。
調査対象PCのUSNジャーナルとMFTは、CDIR-Aでパース済みのCSVファイルを使用します。
解析対象のCSVファイル
このハンズオンで解析対象とするUSNジャーナルおよびMFTは、CDIR-Aでパース済みのCSVファイルとして、演習データの以下の相対パスに保存されています(※ハンズオンをスムーズに進めるため、実際のパース結果から必要部分のみ抜粋しています)。
s17\h2\C_$UsnJrnl-$J_output.csv
s17\h2\C_$MFT_output.csv
2つのCSVファイルを、エクスプローラーからダブルクリックするなどで開きます。
ここでは、LibreOfficeの表計算アプリケーション(Calc)を使用する想定で説明します。
「テキストのインポート」設定画面が表示されますので、「文字エンコーディング」には「Unicode(UTF-8)」、区切り文字には「コンマ」を指定して下さい。
CSVファイルの表示後、列幅の調整、タイトル行の固定、オートフィルター有効化などの整形を行い、分析しやすいように準備をしましょう。
また、USNジャーナルは「Time」欄でソートを行い、履歴を時系列で並べ替えておきましょう。昇順/降順は、どちらでも任意で結構です。
インシデントの想定
2022年3月29日の15時19分35秒に不審な外部通信のアラートがあり、その通信元となったPCの調査を想定します。アラートの原因となったプロセスや、関係するファイルなどを調査して下さい。
まず、アラートの日時に対し、先行かつ直近の時間帯に起動されたプロセスを起点として、調査を開始しましょう。
※ 以下の説明では、タイムスタンプの日付(2022年3月29日)と1/10秒以下は省略します。
調査手順(ハンズオン)
不審なプロセスの特定
MFTからプリフェッチファイルのレコードを調査して、不審な外部通信のアラートに先行かつ直近に起動されたプロセスを確認します。
なお、各プリフェッチファイル本体は保全できなかったと想定します(この想定ケースにおいては、プリフェッチファイルが保全できれば、MFTより優先して解析したほうが効率的です)。
MFTパース結果の「Path」欄を、プリフェッチファイルの保存フォルダ名「C:\Windows\Prefetch」でフィルターし、「Created」欄(作成日時)でソートしてみましょう。
【MFT】

15時19分43秒に、次のプリフェッチファイルが作成されたことがわかりました。
SYSTEM_EX42KDAI2.EXE-F42B5B24.pf
これは、次の実行ファイルの起動により作成されたものと考えられます。
SYSTEM_EX42KDAI2.EXE(system_ex42kdai2.exe)
プリフェッチファイルは、起動から10秒間の挙動を監視した結果が記録されますので、実際に起動された時刻は15時19分33秒ころと推定されます。そのため、この実行ファイルによるプロセスが、不審な外部通信が発生した15時19分35秒に先行かつ直近に起動されたものと判断します。
なお、この実行ファイルは、すでに削除されています。MFTパース結果の「Filename」欄を、起動された実行ファイル名「system_ex42kdai2.exe」で検索(フィルター)しても、該当するMFTレコードはありません。
次に、USNジャーナルで、この実行ファイルの操作(変更)履歴を調査し、その生成や削除の経過を明らかにしましょう。
不審な実行ファイルの調査
USNジャーナル(パース結果)の「File Name」欄を、「system_ex42kdai2.exe」でフィルターし、「Time」でソートしてみましょう。
【USNジャーナル】

「system_ex42kdai2.exe」は、起動から約18秒後の15時19分51秒に削除されたことがわかりました。
一方、同ファイルの生成経過をさかのぼると、15時19分21秒にリネームされています。
続いて、「File ID」欄を「102565」でフィルターし、リネーム以前の履歴を確認しましょう。
【USNジャーナル】

リネーム前のファイル名は「mimimi.dll」とわかりました。
さらに、履歴をさかのぼっていきます。
【USNジャーナル】

リネームと同時に、フォルダの移動(親フォルダID 102564 → 1537)も行われていました。
移動前後のフォルダを、MFTで調べてみましょう。
【MFT】 移動後のフォルダ(ファイルパス)「File ID:1537」

【MFT】 移動前のフォルダ(ファイルパス)「File ID:102564」

このように、「mimimi.dll」は、
C:\Users\user-tech01\AppData\Local\Temp\wei32rwq(102564)
から、
C:\ProgramData(1537)
へ移動され、同時にファイル名が、
system_ex42kdai2.exe
へリネームされたことがわかりました。
さらに、USNジャーナルを、同ファイルの作成時までさかのぼってみます。
【USNジャーナル】

15時17分09秒に、次のファイルパスへ作成されたことが判明しました。
C:\Users\user-tech01\AppData\Local\Temp\wei32rwq\mimimi.dll
ここまで判明したタイムラインを整理してみましょう。
- 15時17分09秒 不審な実行ファイルの作成
C:\Users\user-tech01\AppData\Local\Temp\wei32rwq\mimimi.dll
- 15時19分21秒 不審な実行ファイルのリネーム&フォルダ移動
C:\ProgramData\system_ex42kdai2.exe
- 15時19分33秒ころ 上記
system_ex42kdai2.exeの起動 - 15時19分35秒 不審な外部通信が発生
- 15時19分51秒
system_ex42kdai2.exeの削除
実際の調査においては、さらにUSNジャーナルをはじめ、さまざまなアーティファクトから、「mimimi.dll」が作成された時刻前後の関連イベントを調査して、感染原因を追跡します。
例えば、Maldocに仕込まれたPowerShellスクリプトで外部からダウンロードされたものである場合には、イベントログから同時間帯に実行されたスクリプトが見つかるかもしれません。また、Maldocを開いた際に「Recent」フォルダに作成されるショートカットファイルなどの検索も有効でしょう。
他の実行ファイルによって生成されたものである場合には、プリフェッチから同時間帯の起動プロセスを調査することで、感染原因特定の突破口が見つかることもあります。
また、なりすましメール等により誘導されて、組織内のメンバーが自らマルウェアをダウンロードしてしまった場合には、Webアクセス履歴にファイル名が記録されている可能性もあるでしょう。
手がかりが乏しい調査事案の場合、多種多様なアーティファクトをあてもなく調査することには限界があります。ここで紹介した事例のように、USNジャーナルを活用するなど、調査の起点となる時刻やファイル名などのトリガーを定め、効率的に調査を実施して下さい。
最後に、ここまで調査してきた不審な実行ファイル「system_ex42kdai2.exe(mimimi.dll)」が、調査対象PCに侵入した原因について調べましょう。
次の問題にチャレンジして下さい。
問題
想定
- ハンズオンで特定した、不審な外部通信を行ったと考えられる実行ファイル「
system_ex42kdai2.exe(mimimi.dll)」について、Amcacheに記録されていた同ファイルのハッシュ値から、VirusTotalや公開サンドボックスを検索しました。その結果、次の情報が入手できました。- 悪性ファイル(マルウェア)と評価されている。
- ユーザーが文書ファイルに偽装したMaldocを開くことにより、不正なスクリプトが実行され、外部の配信サイトから当該マルウェアがダウンロードされる。
- ダウンロードされたマルウェア(
mimimi.dll)は、ユーザープロファイルのテンポラリフォルダ(C:\Users\[ユーザー]\AppData\Local\Temp)配下へダウンロードされた後、「C:\ProgramData」フォルダへ移動される - 移動と同時に、ファイル名が「system_
(ランダム文字列).exe」へリネームされ、起動される。
- ハンズオンで特定した、不審な外部通信を行ったと考えられる実行ファイル「
調査事項
- USNジャーナルから、「
system_ex42kdai2.exe(mimimi.dll)」の感染原因となったMaldocファイルを調査して下さい。
- USNジャーナルから、「
- 調査のヒント
- Maldocを開いた際、「Recent」フォルダに作成されるショートカットファイルを検索して、作成日時がマルウェアのダウンロード日時に先行かつ近接するもの探してみましょう。ショートカットファイルから、Maldocのファイル名が確認できます(章「アクティビティの調査」の節「1 Web履歴/最近使用したファイル」を参考にして下さい)。
Flag
感染原因となったMaldocファイルの作成日時から、時刻(「
00:00:00」の形式で、10分の1秒以下は切り捨て)を回答して下さい。※ ショートカットファイルの作成日時ではありません。