Mata Kuliah: Digital Forensic for Military Purposes | 3 SKS
Setelah pertemuan ini, mahasiswa mampu:
| Komponen | Fungsi | Relevansi Forensik |
|---|---|---|
| Platter | Media magnetik penyimpanan | Data recoverable setelah dihapus |
| R/W Head | Membaca & menulis data | Kerusakan → data loss |
| Controller | Mengontrol operasi disk | Firmware menyimpan info forensik |
| Aspek | HDD | SSD |
|---|---|---|
| Media | Piringan magnetik | Chip flash NAND |
| Komponen bergerak | Ya | Tidak |
| Recovery data | Relatif mudah | Sangat sulit |
| TRIM support | Tidak | Ya (menghapus data) |
| Tipe | Bit/Sel | Daya Tahan | Penggunaan |
|---|---|---|---|
| SLC | 1 | ~100K siklus | Enterprise, militer |
| MLC | 2 | ~10K siklus | Enterprise |
| TLC | 3 | ~3K siklus | Consumer |
| QLC | 4 | ~1K siklus | Storage massal |
💡 SLC dipilih untuk militer karena keandalan tinggi dan rentang suhu operasi luas (-40°C s/d 85°C)
| Offset | Ukuran | Komponen |
|---|---|---|
| 0x000 | 446 bytes | Bootstrap Code |
| 0x1BE | 4 × 16 bytes | Partition Table (4 entri) |
| 0x1FE | 2 bytes | Boot Signature (0x55AA) |
Setiap entri partisi = 16 bytes:
| Offset | Ukuran | Field |
|---|---|---|
| 0x00 | 1 byte | Status (0x80 = bootable) |
| 0x04 | 1 byte | Partition type (0x07=NTFS, 0x0B=FAT32) |
| 0x08 | 4 bytes | LBA of first sector |
| 0x0C | 4 bytes | Number of sectors |
| Komponen | Lokasi | Deskripsi |
|---|---|---|
| Protective MBR | LBA 0 | Kompatibilitas mundur |
| GPT Header | LBA 1 | Metadata tabel partisi |
| Partition Entries | LBA 2-33 | Hingga 128 partisi |
| Backup Header + Entries | LBA akhir | Redundansi penuh |
| Aspek | MBR | GPT |
|---|---|---|
| Kapasitas maks | 2 TB | 9,4 ZB |
| Partisi maks | 4 primer | 128 |
| Redundansi | Tidak ada | Backup header & entries |
| CRC check | Tidak | Ya (CRC32) |
| Boot | BIOS | UEFI |
| Sistem File | Entri FAT | Kapasitas Maks | File Maks |
|---|---|---|---|
| FAT12 | 12 bit | 32 MB | 32 MB |
| FAT16 | 16 bit | 2 GB | 2 GB |
| FAT32 | 32 bit | 2 TB | 4 GB |
| exFAT | 32 bit | 128 PB | 16 EB |
FAT bekerja sebagai linked list cluster:
| Nilai | Arti | Relevansi Forensik |
|---|---|---|
0x00000000 |
Cluster kosong (free) | Mungkin berisi data lama |
0x00000002–0x0FFFFFEF |
Cluster berikutnya | Rantai file |
0x0FFFFFF7 |
Bad cluster | Bisa digunakan menyembunyikan data |
0x0FFFFFF8–0x0FFFFFFF |
End of File (EOF) | Akhir rantai cluster |
| Area | Deskripsi | Forensik |
|---|---|---|
| Boot Sector | VBR, BPB, bootstrap | Info volume & cluster size |
| MFT | Master File Table | Database utama metadata |
| MFT Mirror | Salinan parsial MFT | Backup recovery |
| System Files | $Bitmap, $LogFile, $Volume | Info file system |
| Data Area | File & direktori user | Konten file |
Setiap file dan direktori memiliki minimal 1 entri MFT (biasanya 1024 bytes):
| Offset | Field | Nilai Penting |
|---|---|---|
| 0x00 | Signature | "FILE" (0x454C4946) |
| 0x08 | $LogFile Seq Number | Nomor urut transaksi |
| 0x16 | Flags | 0x01=In use, 0x02=Directory |
💡 File yang dihapus: flag berubah dari 0x01 → 0x00, tapi data MFT entry masih ada!
| Record | Nama | Fungsi |
|---|---|---|
| 0 | $MFT | Master File Table itu sendiri |
| 1 | $MFTMirr | Mirror dari 4 record pertama |
| 2 | $LogFile | Journal transaksi |
| 5 | . (root) | Direktori root |
| 6 | $Bitmap | Peta alokasi cluster |
| 8 | $BadClus | Daftar cluster rusak |
Setiap MFT entry terdiri dari atribut-atribut:
| Atribut | Type | Nilai Forensik |
|---|---|---|
| $STANDARD_INFORMATION | 0x10 | Timestamps MACE, flags |
| $FILE_NAME | 0x30 | Nama file, timestamps alternatif |
| $SECURITY_DESCRIPTOR | 0x50 | ACL dan permission |
| $DATA | 0x80 | Konten aktual file |
| $INDEX_ROOT | 0x90 | Struktur direktori (B-tree) |
| Timestamp | $STANDARD_INFO | $FILE_NAME |
|---|---|---|
| M — Modified | Terakhir konten diubah | Diset saat file dibuat |
| A — Accessed | Terakhir diakses | Diset saat file dibuat |
| C — Created | Waktu pembuatan | Waktu pembuatan |
| E — Entry Modified | Terakhir MFT diubah | Diset saat file dibuat |
Skenario: Analis BSSN menemukan anomali timestamp:
| Atribut | Created | Dapat Dimanipulasi? |
|---|---|---|
| $STANDARD_INFO | 2020-01-15 | Ya ⚠️ |
| $FILE_NAME | 2025-11-20 | Tidak ✓ |
| Aspek | $LogFile | $UsnJrnl |
|---|---|---|
| Tujuan | Recovery setelah crash | Tracking perubahan file |
| Level | File system level rendah | File level tinggi |
| Data | Operasi MFT | Nama file, alasan, timestamp |
| Forensik | Rekonstruksi operasi teknis | Timeline aktivitas user |
💡 Keduanya saling melengkapi: $LogFile untuk "bagaimana", $UsnJrnl untuk "siapa, kapan, apa"
dir standar.
Membuat ADS:
echo "data rahasia" > file.txt:hidden_stream
Mendeteksi ADS:
dir /R
streams.exe file.txt (Sysinternals)
laporan.docx berukuran 15 KB di Explorer, tetapi FTK Imager menunjukkan 2,3 MB → kemungkinan data rahasia disembunyikan dalam ADS!
| Ukuran Volume | NTFS Default | FAT32 Default |
|---|---|---|
| ≤ 2 GB | 2 KB | 4 KB |
| 2 – 16 GB | 4 KB | 4 KB |
| 16 – 32 GB | 4 KB | 8 KB |
| 32 GB – 2 TB | 4 KB | 16 KB |
Contoh: File 5.000 bytes pada NTFS (cluster 4 KB):
| Komponen | Ukuran |
|---|---|
| Cluster dialokasikan | ⌈5.000/4.096⌉ = 2 cluster |
| Ruang teralokasi | 2 × 4.096 = 8.192 bytes |
| Slack space | 8.192 − 5.000 = 3.192 bytes |
💡 Slack space 3.192 bytes ini berpotensi menyimpan fragmen data dari file sebelumnya!
| Jenis | Lokasi |
|---|---|
| Volume slack | Antara akhir file system dan akhir partisi |
| Partition gap | Antara dua partisi |
| Unpartitioned space | Setelah partisi terakhir (data tersembunyi!) |
| Deleted file space | Cluster yang dirilis setelah file dihapus |
Mengapa file yang dihapus masih bisa dipulihkan?
| Tahap | Aksi | Data di Disk |
|---|---|---|
| File aktif | Entry MFT/FAT aktif | Data utuh ✓ |
| Hapus ke Recycle Bin | Pindah ke $Recycle.Bin | Data utuh ✓ |
| Kosongkan Recycle Bin | MFT ditandai "not in use" | Data masih ada! |
| Cluster ditimpa | File baru pakai cluster | Data hilang ✗ |
| Fitur | ext2 | ext3 | ext4 |
|---|---|---|---|
| Tahun | 1993 | 2001 | 2008 |
| Journaling | Tidak | Ya | Ya |
| File maks | 2 TB | 2 TB | 16 TB |
| Timestamps | Detik | Detik | Nanosecond |
| Field | Deskripsi |
|---|---|
| Mode, UID, GID | Tipe file, permission, pemilik |
| atime, mtime, ctime | Timestamps akses, modifikasi, change |
| dtime | Deletion time — tidak ada di NTFS! |
| Block pointers | Direct, indirect, double indirect |
💡 ext4 menyimpan deletion time (dtime) — sangat berguna mengetahui kapan file dihapus!
| Aspek | NTFS (MFT) | ext4 (Inode) |
|---|---|---|
| Ukuran entry | 1024 bytes | 256 bytes |
| Timestamps | 8 (4×SI + 4×FN) | 4 (a/m/c/dtime) |
| Deletion time | Tidak ada | dtime ✓ |
| ADS | Didukung | Tidak |
| Timestomping detection | SI vs FN | Lebih sulit |
| Sistem File | Journal | Info Forensik |
|---|---|---|
| NTFS | $LogFile | Operasi metadata MFT |
| NTFS | $UsnJrnl | Change journal: create, delete, rename |
| ext3/ext4 | jbd/jbd2 | Transaksi file system |
| HFS+ | .journal | Metadata transactions |
| Tahap | HDD | SSD + TRIM |
|---|---|---|
| File dihapus | Cluster ditandai free | Cluster ditandai free |
| TRIM dieksekusi | — | Page dihapus fisik! |
| Recovery? | Mungkin ✓ | Tidak mungkin ✗ |
Skenario: Laptop SSD NVMe tersangka disita, file dihapus 2 jam lalu, TRIM aktif.
| Faktor | Status | Dampak |
|---|---|---|
| Media | SSD NVMe | Recovery sangat sulit |
| TRIM | Aktif | Data kemungkinan sudah terhapus fisik |
Pertanyaan 1:
Berapa kapasitas maksimal partisi pada skema MBR?
💡 MBR menggunakan 4 bytes untuk jumlah sektor: 2³² × 512 bytes ≈ 2 TB
Pertanyaan 2:
Atribut NTFS mana yang TIDAK DAPAT dimanipulasi oleh user untuk timestomping?
⚠️ $FILE_NAME timestamps hanya dapat diubah oleh kernel Windows!
Pertanyaan 3:
Fitur unik ext4 yang TIDAK dimiliki NTFS dan sangat berguna untuk forensik adalah?
✅ ext4 menyimpan kapan file dihapus langsung di inode — informasi berharga!
Pertanyaan 4:
Mengapa file yang dihapus pada SSD dengan TRIM aktif hampir tidak mungkin dipulihkan?
| Konsep | Poin Kunci |
|---|---|
| HDD vs SSD | HDD = recovery mudah; SSD = TRIM, wear leveling, GC |
| MBR vs GPT | MBR: 4 partisi/2TB; GPT: 128 partisi, redundansi |
| FAT vs NTFS | FAT: linked list sederhana; NTFS: MFT, ADS, journal |
| MFT & MACE | 8 timestamps, deteksi timestomping via $SI vs $FN |
| Slack & Unallocated | Sumber data residual, target file carving |
| ext4 | Inode dengan dtime, journaling, nanosecond timestamp |
| Tools | FTK Imager, MFTExplorer, Autopsy, HxD |
Pertemuan 03: Hard Disk dan Sistem File
Ada pertanyaan?