フォレンジック ノート
NTFS の内部構造、MFT の構造、デジタル フォレンジックのワークフローに関する短いノート。
Windows システムに、ある時点でファイルが存在したことを証明する
ディスク上にファイルがもう無くても、$MFT はそれがそこに存在したことを — そしてしばしばその中身までも — 示せます。
$UsnJrnl と $MFT: 変更ジャーナルとファイル テーブルを組み合わせる
$MFT は各ファイルの現在の状態を、$UsnJrnl はそれぞれがどうやってその状態に至ったかを教えてくれます。
Master File Table (MFT): NTFS の $MFT を解説
NTFS のマスター ファイル テーブルとは何か、レコードがどう構成されるか、どの属性を保持するか、そして $MFT が破損した時にどうすべきかを解説します。
$MFT はランサムウェア攻撃をどう暴くか
ランサムウェアは $MFT に特徴的な痕跡を残します — 拡張子の大量変更、書き込みの連射、孤立した元ファイル。
MFT パーサー ツール比較: MFTECmd、omerbenamram/mft、ブラウザ パーサー
本格的な MFT パーサー 3 つを比較。MFTECmd、omerbenamram/mft、WebAssembly ブラウザ ツール — それぞれの得意分野と選び方。
MFT を使って NTFS から削除済みファイルを復元する方法
NTFS の削除ファイル復元の仕組み、使用するツール、そしてデータが本当に失われる場面までを段階的に解説します。
$MFT からフォレンジック タイムラインを組み立てる
あらゆる MFT レコードは、Windows ボリュームの活動を時間単位で再構築するために必要な 8 つのタイムスタンプを保持しています。
Python で $MFT を解析する方法
Python で NTFS の $MFT を解析する 3 つの実用的アプローチ: analyzeMFT、libmft、高速な Rust パーサーへのシェル アウト。
代替データ ストリーム: NTFS に隠れる $DATA 属性
あらゆる NTFS ファイルは複数の $DATA 属性を持てます。それぞれは独立したストリームで、ふつうのファイル一覧からは見えません。
$MFTMirr とは? NTFS はいつ使うのか
$MFTMirr は MFT 先頭レコードのバックアップで、ブート領域破損から NTFS が回復するための仕組み。内容、配置場所、chkdsk による使われ方を解説。
稼働中の Windows から $MFT を取り出す方法
Windows 稼働中、$MFT はロックされています。コピーを取得する信頼できる 3 つの方法: fsutil、FTK Imager、KAPE。
ボリューム シャドウ コピーと $MFT: 古いバージョンのテーブルを復元する
各 VSS スナップショットには、その時点の $MFT のコピーが含まれます。取り出し方と、ライブの MFT では分からないことを解説します。
NTFS の MFT と FAT: 何が変わり、なぜフォレンジックで重要なのか
NTFS がどのように FAT のアロケーション テーブルをマスター ファイル テーブルに置き換えたか、そしてそれが証拠回収に何をもたらすか。
NTFS でファイルを削除しても残るもの
NTFS で「削除」してもまず消去はされません。MFT レコード、$STANDARD_INFORMATION、$FILE_NAME、そしてしばしば $DATA は再利用されるまでそこに残ります。
常駐データ: MFT の中で暮らす小さなファイル
小さなファイルの $DATA 属性は MFT レコード内に直接格納されます。フォレンジック上は、ディスクに触れずに復元できることを意味します。
NTFS のアンチ フォレンジック: 攻撃者は MFT に何をするか、どう見抜くか
タイムストンピング、代替データ ストリーム、ワイピング、USN ジャーナル操作 — NTFS で一般的なアンチ フォレンジック手法と、それぞれが残す痕跡。
MFT の 4 つのタイムスタンプとタイムストンピングの痕跡
すべての MFT レコードは 2 組のタイムスタンプを持っています。両者がなぜズレるのかを理解することが、NTFS 時間解析の出発点です。
MFT レコードの内部: シグネチャ、ヘッダー、属性
NTFS の $MFT レコード 1 つをバイト単位で見ていきます — FILE シグネチャ、レコード ヘッダー、フィックスアップ配列、属性ストリーム。