フォレンジック ノート
NTFS の内部構造、MFT の構造、デジタル フォレンジックのワークフローに関する短いノート。
ディスクに存在しなくなったファイルがかつて存在したことを証明する
dir が空で返ってきたとき、$MFT がしばしば依然として答えます。NTFS メタデータからファイルの過去の存在を示す実務者向けガイドと、レビューに耐えうる注意点。
$UsnJrnl と $MFT を組み合わせて真のタイムラインを作る
$MFT はスナップショットです。$UsnJrnl はそれを生んだ変更の系列です。両者を組み合わせる実務者の視点と、reason コードが何を意味するか、そしてジャーナルが嘘をつくところ。
Master File Table(MFT):NTFS の $MFT を解説する
NTFS の Master File Table とは何か、レコードはどのようにレイアウトされているか、どの属性を保持するか、先頭にあるシステムファイルは何を意味するか、そして $MFT が破損したときに何をすべきか。
$MFT におけるランサムウェアの姿
大量の拡張子変更、バースト書き込み、削除されたオリジナル、そして暗号化実行中に Master File Table に現れるパターン。トリアージに関する実務者の視点。
実際に使い物になる MFT パーサ:MFTECmd、omerbenamram/mft、そしてブラウザパース
3 つすべてを使う者による、3 つの本格的な MFT パーサの比較。MFTECmd に手を伸ばすとき、omerbenamram/mft でスクリプトを書くとき、そしてブラウザパーサが正解のときについて。
MFT を使って NTFS から削除されたファイルを回復する
NTFS での実務的な回復ワークフロー。削除されたファイルが回復可能なとき、手を伸ばすべきツール、データが本当に失われているケース、そしてレジデントデータのトリック。
レビューに耐える $MFT ベースのタイムライン構築
MFT を基にしたタイムライン作成の実務的アプローチ。どのタイムスタンプを出力するか、USN とイベントログとどう統合するか、そして素朴なスーパータイムラインが誤導する箇所について解説します。
週末を失わずに Python で $MFT を解析する
Python で NTFS $MFT を解析する 3 つの実用的アプローチ。純粋 Python なら analyzeMFT、型付きオブジェクトモデルなら libmft、速度が重要なら Rust パーサにシェルアウト。
代替データストリーム:誰もが忘れる二つ目の $DATA 属性
名前付き $DATA 属性は目に見えるファイルの隣に存在しています。ADS がどこに潜むのか、Windows が何のために使っているのか、そしてなぜファイル単位の列挙では見つけられない ADS を MFT トリアージなら見つけられるのかを、実務者の視点で解説します。
$MFTMirr が実際に何をするのか、そして NTFS がそれを使うとき
$MFTMirr は $MFT の最初のレコードをミラーリングして、メインテーブルのヘッダが読み取り不能でもボリュームをマウントできるようにします。どこに存在し、何を保持し、どのケースでその真価を発揮するか。
ライブ Windows ホストから $MFT を壊さずに抽出する
稼働中の Windows システムから法的に妥当な $MFT を取得する信頼できる 3 つの方法、コピーを密かに破損させるミス、そしてファイルを信頼する前に検証すべきこと。
Volume Shadow Copy と $MFT:すべてのスナップショットは凍結された MFT
各 VSS スナップショットは特定時点の完全な $MFT を保持しています。列挙、マウント、抽出、差分の取り方、そしてスナップショットが調査を救うケース。
なぜ NTFS は FAT ではあり得なかったほどフォレンジックに多くを与えるのか
FAT は次のクラスタを記録します。NTFS はすべてを記録します。FAT から Master File Table への移行が、証拠回復に対して実際に何を変えたかについての実務者の視点。
NTFS でファイルが削除されたとき、実際に何が残るのか
NTFS の削除は 1 ビットを消去し、インデックスエントリを更新するだけです。レコード、属性、そしてしばしばデータも、待機状態のまま残ります。何が回復可能で、どれくらいの期間残るのかについての実務者の視点です。
レジデントデータ:MFT 内に存在する小さなファイル
小さなファイルは $DATA 属性全体を MFT レコード内に格納します。サイズしきい値、これが調査を救うケース、そしてトリックの限界。
NTFS アンチフォレンジック:攻撃者が実際にやること、そして彼らを暴くもの
Timestomping、ADS ペイロード、USN 削除、MFT 落書き。NTFS アンチフォレンジック手法のカタログを、各手法がスクラブできない具体的なアーティファクトと共に示します。
4 つの MFT タイムスタンプと、timestomping がそこにどう現れるか
すべての MFT レコードは 2 つの 4 つのタイムスタンプの組を保持しています。なぜ乖離するか、改ざん下で乖離がどう見えるか、そして雑なツールを捕まえるサブ秒の決め手。
MFT レコードの内部、バイト単位で
1,024 バイトの FILE レコードを精読します。シグネチャ、ヘッダ、fixup 配列、属性ストリーム、そしてヘックスエディタで生バイトを読むときに重要となるフィールドを取り上げます。