ディスクフォレンジックとは
ディスクフォレンジックとは、コンピュータのハードディスクやSSD、USBメモリなどの記録媒体を対象に、証拠データを復元・解析する技術です。
削除されたファイルの復元や、不正アクセスの痕跡調査、マルウェア感染の調査などで利用されます。
ディスクフォレンジックの流れ
一般的な解析の流れは以下の通りです。
-
証拠ディスクの確保とイメージ取得
-
オリジナルは書き換え禁止(write-blocker使用)
-
例:
dd
コマンドでディスクイメージを取得dd if=/dev/sdb of=disk_image.dd bs=4M conv=noerror,sync
-
-
ハッシュ値の算出と検証
-
改ざん防止のためMD5やSHA256でハッシュを保存
sha256sum disk_image.dd > disk_image.dd.sha256
-
-
解析作業(以下の手法を組み合わせる)
-
レポート作成
ディスクフォレンジックの代表的解析手法
- ファイルシステム解析
- タイムライン解析
- キーワードによる解析
- ファイルカービングによるファイル復元
- ハッシュデータベース検索
- ボリュームシャドーコピーの解析
解析手法の詳細
ファイルシステム解析
ファイルシステム(NTFS, FAT32, ext4など)のメタデータを調べ、どんなファイルやディレクトリが存在したかを確認する。
-
ツール例: Autopsy, Sleuth Kit (
fls
,icat
) -
例: NTFSのMFTを調べる
fls -r -o 2048 disk_image.dd
→ 削除済みファイルも一覧表示できる。
icat -o 2048 disk_image.dd 12345 > recovered.docx
→ inode番号12345のファイルを復元。
タイムライン解析
ファイルの作成・更新・アクセス・削除などの時系列を分析し、不正操作や痕跡がいつ起きたかを推定する。
-
ツール例: Sleuth Kit (
mactime
), log2timeline (Plaso) -
例:
fls -m / -r disk_image.dd > bodyfile.txt mactime -b bodyfile.txt 2023-01-01..2023-01-31 > timeline.txt
→ 1月に発生したファイル操作のタイムラインを出力。
キーワードによる解析
イメージ全体から特定のキーワード(例: 「password」「confidential」)を検索して証拠を探す。
-
ツール例: bulk_extractor, strings, grep
-
例:
bulk_extractor -o output disk_image.dd grep "password" output/wordlist.txt
→ wordlistから「password」を含む候補を抽出。
ファイルカービングによるファイル復元
ファイルシステム情報が壊れていても、ファイルのシグネチャ(ヘッダ)から直接ファイルを復元する。
-
ツール例: PhotoRec, scalpel
-
例:
photorec disk_image.dd
→ JPEG, ZIP, PDF など多数の形式を自動復元可能。
ハッシュデータベース検索
ファイルのハッシュを算出し、既知のマルウェアや既知ファイル(OS標準ファイルなど)と照合して効率的に仕分ける。
-
ツール例:
md5deep
, NSRLハッシュセット -
例:
md5deep -r disk_image.dd > hashlist.txt
→ 生成したハッシュをNSRLデータベースと照合し、未知ファイルだけを調査対象にできる。
ボリュームシャドーコピーの解析
Windowsのボリュームシャドーコピー(VSS)は過去のスナップショットを保存しており、過去のファイル状態を復元できる。
-
ツール例: vshadowmount, Autopsy
-
例:
vshadowmount disk_image.dd /mnt/shadow ls /mnt/shadow
→ シャドーコピー内の古いファイルにアクセス可能。
まとめ
ディスクフォレンジックでは、
- ファイルシステムの構造解析
- 時系列(タイムライン)での追跡
- キーワード検索やカービングでの復元
- ハッシュやVSSを利用した効率化
などを組み合わせて、証拠を確実に抽出していきます。