Lab 14: Backup & Recovery Forensics - Menganalisis File Backup untuk Investigasi
Target Skill: Mahasiswa mampu menganalisis file backup (tar, rsync, restic) untuk menemukan bukti yang sudah dihapus dari sistem aktif
Tools:tar,rsync,restic,date,diff
Durasi: 30 menit
Level: Beginner
Mengapa Backup Forensics Penting?
Ketika attacker berhasil masuk dan menghapus jejak dari server, backup adalah penyelamat investigator:
- File yang dihapus attacker mungkin masih ada di backup
- Timestamp backup menunjukkan kondisi server sebelum insiden
- Perbandingan backup vs kondisi sekarang mengungkap apa yang berubah
- Backup adalah sumber bukti yang tidak bisa dimanipulasi attacker (jika disimpan terpisah)
Langkah Praktikum
cd ~ && mkdir forensics-lab14 && cd forensics-lab14
# 1. Simulasi: Backup sebelum serangan
mkdir -p server-backup/config server-backup/data server-backup/logs
echo "db_password=S3cur3P@ss" > server-backup/config/database.conf
echo "api_key=sk-abc123def456" > server-backup/config/api.conf
echo "user:admin:2024-01-01" > server-backup/data/users.csv
echo "log:2024-06-10:login success" > server-backup/logs/access.log
echo "log:2024-06-10:data export 5000 records" >> server-backup/logs/access.log
# 2. Buat backup tar
tar czf backup-sebelum-serangan.tar.gz server-backup/
# 3. Simulasi: Kondisi setelah serangan (file dihapus)
mkdir -p server-current/config server-current/data server-current/logs
echo "db_password=CHANGED_BY_ATTACKER" > server-current/config/database.conf
echo "user:admin:2024-01-01" > server-current/data/users.csv
echo "log:2024-06-10:login success" > server-current/logs/access.log
# api.conf - hilang (dihapus attacker!)
# access.log - baris kedua dihapus (data export hilang!)
# 4. Bandingkan backup vs kondisi sekarang
echo "=== Perbandingan Backup vs Current ==="
echo ""
echo "Files di backup TAPI tidak di current:"
diff -rq server-backup server-current 2>/dev/null | grep "Only in server-backup"
echo ""
echo "Files yang BERUBAH isinya:"
diff -rq server-backup server-current 2>/dev/null | grep differ
echo ""
echo "=== File hilang dari backup: ==="
echo "❌ server-backup/config/api.conf → tidak ada di server current!"
echo "❌ Baris ke-2 access.log hilang (data export log!)"
# 5. Restore & analisis
echo ""
echo "=== Restore file dari backup ==="
tar xzf backup-sebelum-serangan.tar.gz
echo "✅ File api.conf berhasil di-restore:"
cat server-backup/config/api.conf
echo ""
echo "=== Timeline Backup ==="
stat backup-sebelum-serangan.tar.gz | grep Modify
echo ""
echo "📌 Analisis:"
echo "- Attack time: SETELAH timestamp backup"
echo "- File api.conf dihapus - menyembunyikan bukti"
echo "- Data export log dihapus - menyembunyikan data theft"
echo "- Password diubah - attacker mengunci akses admin"
️ Analisis
| Backup Artifact | Forensik Value |
|---|---|
| Timestamp file | Kapan backup dibuat → batas waktu serangan |
| Deleted files | File yang ada di backup tapi hilang sekarang |
| Changed files | Isi yang berbeda - modifikasi oleh attacker |
| File size changes | File mengecil = data mungkin dicuri |
Refleksi: Backup bukan cuma untuk disaster recovery - ini adalah mesin waktu forensik. Aturan 3-2-1 (3 copies, 2 media, 1 offsite) juga melindungi bukti dari kerusakan.
Generated by @farishhz Agent Pentest Pipeline - TDCTF Security Academy