Loading Article...

Rizky Tempest Blog

Exploring Cyber Security, Networking, Programming & Technology

CTF Forensic: Mencari Flag di File JPG yang Rusak

Write-up lengkap forensic challenge CTF tentang file JPG dengan signature yang rusak. Pelajari teknik analisis file header dan hex editing.

CTF Forensic Challenge

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.

Fun Fact: CTF challenges dirancang untuk mereplikasi situasi keamanan dunia nyata dan menguji pengetahuan serta keterampilan peserta.

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.

Clue: Nama file "head.jpg" memberikan hint tentang "file header" atau "file signature".

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)
Note: File signature adalah cara yang lebih dapat diandalkan daripada hanya bergantung pada ekstensi file, yang dapat diubah oleh pengguna atau program jahat.

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.

File Error

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.

Hex Analysis

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.

Masalah: Byte kedua seharusnya D8 tetapi yang terbaca adalah 00

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.

Hex Editing

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.

File Fixed

Gambar 5: File JPG berhasil diperbaiki dan flag ditemukan

Success! File JPG ternyata sudah kembali normal tanpa menunjukkan error, dan saya berhasil menemukan flag untuk tantangan ini.
🏴 CTF{mksH_uDh_c3k_myh3d}

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:

  1. File Format Knowledge - Memahami struktur file berbagai format
  2. Hex Analysis - Kemampuan membaca dan menganalisis data hex
  3. Problem Solving - Pendekatan sistematis untuk menyelesaikan masalah
  4. Forensic Basics - Dasar-dasar digital forensics
  5. 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.

Next Challenge: Coba tantangan CTF forensic lainnya seperti file carving, memory analysis, atau network packet analysis!

Sekian, terima kasih banyak untuk kalian yang sudah membaca! Semoga write-up ini bermanfaat untuk perjalanan CTF kalian.