Gambar 1: Ilustrasi CTF Forensic Challenge
Apa itu CTF (Capture The Flag)?
CTF (Capture The Flag) adalah bentuk kompetisi keamanan komputer yang memungkinkan peserta untuk menguji dan meningkatkan keterampilan keamanan siber mereka. Peserta atau tim berkompetisi untuk menemukan yang disebut "flags" yang tersebar di seluruh sistem atau aplikasi.
Tantangan dalam CTF dapat mencakup berbagai aspek keamanan siber, seperti pemecahan kriptografi, analisis forensik, eksploitasi celah keamanan, pemeriksaan malware, dan pemecahan teka-teki yang melibatkan pemrograman atau logika.
The Challenge: File JPG yang Rusak
Deskripsi Tantangan
Saya pernah menyelesaikan satu soal CTF di suatu layanan. Di tantangan itu mereka memberikan tautan untuk mendownload file gambar bernama "head.jpg" dan diharuskan menemukan sebuah "flag" untuk menyelesaikan tantangan.
File Signature (Magic Number)
Apa itu File Signature?
File signature, juga dikenal sebagai "magic number" atau file header, adalah serangkaian byte awal dalam sebuah file yang digunakan untuk mengidentifikasi jenis dan format file tersebut. Setiap jenis file memiliki tanda tangan unik yang membantu sistem operasi dan aplikasi perangkat lunak untuk mengenali file tersebut tanpa perlu bergantung pada ekstensi file.
Contoh File Signature Populer:
| File Type | File Signature | Keterangan |
|---|---|---|
| JPEG Image | FF D8 FF | Standard JPEG file header |
| PNG Image | 89 50 4E 47 | PNG file signature |
| PDF Document | 25 50 44 46 | %PDF-1. (ASCII) |
| ZIP Archive | 50 4B 03 04 | PK.. (ASCII) |
| GIF Image | 47 49 46 38 | GIF8 (ASCII) |
Analisis File "head.jpg"
Step 1: Identifikasi Masalah
Setelah mendownload dan mencoba membuka file gambar tersebut, file menunjukkan error. Ini membuat saya semakin yakin bahwa signature file gambar tersebut keliru atau ada kesalahan yang membuat gambar menjadi rusak.
Gambar 2: File JPG menunjukkan error saat dibuka
Step 2: Hex Analysis dengan Hex Editor
Karena saya menggunakan Android, saya menganalisis file tersebut dengan aplikasi bernama "Hex Editor". Dan benar saja saat saya cek nilai signature di byte ke-2 menunjukkan bahwa itu salah untuk file JPG.
Gambar 3: Analisis hex menunjukkan signature yang salah - FF 00 FF
Step 3: Identifikasi Kesalahan
Seperti yang ada di penjelasan di atas, signature untuk file gambar JPG/JPEG seharusnya adalah FF D8 FF bukan FF 00 FF.
Proses Perbaikan File Signature
Step 4: Hex Editing
Setelah mengetahui kesalahan ada di nilai byte ke-2 yakni 00, maka saya hanya perlu mengubah nilainya menjadi D8.
Gambar 4: Mengubah nilai 00 menjadi D8
Step 5: Verifikasi dan Ekstraksi Flag
Setelah melakukan perubahan, saya save file dan mencoba membuka kembali file gambar tersebut.
Gambar 5: File JPG berhasil diperbaiki dan flag ditemukan
Tools yang Digunakan
Hex Editors untuk Forensic Analysis:
- Hex Editor (Android) - Untuk analisis mobile
- HxD (Windows) - Free hex editor
- hexedit (Linux) - Command-line hex editor
- 010 Editor - Professional hex editor dengan templates
- Bless (Linux) - GTK-based hex editor
Online Tools:
- File Signature Database - Untuk referensi magic numbers
- Online Hex Editors - Untuk quick analysis
- CyberChef - Untuk berbagai operasi data
Learning Points
Keterampilan yang Diperoleh:
- File Format Knowledge - Memahami struktur file berbagai format
- Hex Analysis - Kemampuan membaca dan menganalisis data hex
- Problem Solving - Pendekatan sistematis untuk menyelesaikan masalah
- Forensic Basics - Dasar-dasar digital forensics
- Tool Usage - Penggunaan tools khusus untuk analisis
Tips untuk CTF Forensic:
- Selalu periksa file signature pertama kali
- Gunakan tools yang tepat untuk jenis analisis yang dilakukan
- Document setiap step yang dilakukan
- Pelajari common file formats dan signatures
- Practice dengan berbagai jenis challenges
Kesimpulan
Challenge CTF forensic ini mengajarkan pentingnya memahami file signatures dan bagaimana melakukan basic hex editing. Meskipun terlihat sederhana, pengetahuan tentang file formats sangat crucial dalam digital forensics dan security analysis.
Sekian, terima kasih banyak untuk kalian yang sudah membaca! Semoga write-up ini bermanfaat untuk perjalanan CTF kalian.