@port139 Blog

基本的にはデジタル・フォレンジックの技術について取り扱っていますが、記載内容には高確率で誤りが含まれる可能性があります。

スナップショット利用順序に関する設問

問題:
Windows 環境におけるライブ・フォレンジックにおいて、VSS を利用したスナップショットファイルを作成し、スナップショットファイル経由でボリュームをコレクションする場合、メモリダンプとスナップショットファイルの作成では、どちらを優先して作業すべきかを揮発性の順序も考慮して回答せよ。

誤った回答例:
スナップショットファイルの作成を、メモリダンプより優先して作業を行う方がよい。スナップショットファイルを優先して作成することにより、以後のメモリダンプなどのオペレーションに伴う、ボリューム上のファイルシステムに対する変更の影響を受けることなく、スナップショット作成時点のイメージ作成を実施することができる。
メモリダンプを先に実施した場合、メモリダンププロセスの影響などにより、メモリ内に存在するデータが Pagefile.sys にスワップアウトされるケースや、スワップアウトにより Pagefile.sys 内のデータが上書きされてしまう状況が発生する。スナップショットファイルを作成後であれば、これらの変化はスナップショットに吸収されることで、スナップショット作成時点における最小限の影響(変更)があった Pagefile.sys をスナップショット経由で取得することができるメリットがある。また、搭載されているメモリサイズによっては、メモリダンプには少なからず時間が必要となり、その間にファイルシステムで削除ファイルの上書きなどが時間の経過と共に発生する可能性が高くなる。削除ファイルのデータ領域を適切に保護しつつメモリダンプも行うためにはスナップショットを優先して作成すべきである。
また、メモリ全体をダンプするのではなく、揮発性情報を取得するために幾つかのコマンドを実行するというケースにおいても、これらのプログラム実行は少なからずファイルシステムに対して影響がある作業であり、スナップショットファイルの作成はこれらのコマンド実行前に実施するほうがよいと考えられる。
スナップショットファイルの作成をメモリダンプよりも優先した場合、メモリ内のデータに対する影響としては、スナップショット作成に必要なプロセス実行、さらにファイルシステム上に新たなスナップショットファイルを作成する為に必要となるOS側のオペレーション($MFTファイルにおける該当ファイルのレコード作成など)により、メモリ内のデータが大幅に変化する可能性が考えられる。特にすでに終了しているプロセスが使っていた、メモリ内における未使用領域に必要とするデータが残っている場合には、それらのデータが上書きされてしまう危険性が考えられる。