**BroncoCTF: Spot the Difference – Writeup Mendalam**
Dalam sebuah tantangan yang menguji ketelitian dan pemahaman algoritma diferensiasi, kontestan di BroncoCTF dihadapkan pada dua file teks yang tampak identik: file1.txt dan file2.txt. Kedua file tersebut berisi deretan karakter acak—huruf, angka, dan simbol—dimana setiap karakter ditempatkan pada baris terpisah. Pada pandangan pertama, tidak ada yang mencolok, namun petunjuk menantang peserta untuk menemukan baris yang "diperbarui" untuk menyisipkan pesan rahasia.
**Tahap Pengintaian dan Kesalahan Umum** Awalnya, banyak peserta mencoba melakukan perbandingan baris demi baris menggunakan metode sederhana seperti `zip()` pada Python. Pendekatan ini mengabaikan fakta bahwa kedua file memiliki panjang yang berbeda: file1.txt berisi 350 baris, sementara file2.txt memiliki 351 baris. Perbedaan panjang ini menyebabkan perbandingan posisi menjadi tidak sinkron setelah titik penyisipan atau penghapusan, sehingga menghasilkan perbedaan palsu yang banyak. Kesalahan ini mengajarkan pentingnya memeriksa kesamaan panjang file sebelum melakukan perbandingan langsung.
**Menggunakan SequenceMatcher untuk Diferensiasi yang Akurat** Untuk mengatasi masalah ini, writeup menggunakan `difflib.SequenceMatcher` dari Python dengan parameter `autojunk=False`. Metode ini mampu menangani penyisipan, penghapusan, dan penggantian karakter secara tepat, menghasilkan 79 perbedaan total. Dari jumlah tersebut, sebagian besar merupakan perubahan kasus huruf (misalnya e↔E, w↔W), yang merupakan noise visual untuk mengaburkan sinyal sebenarnya.
**Menyaring Noise dan Mengekstrak Pesan** Dengan menyaring perbedaan yang hanya berkaitan dengan perubahan kasus, ditemukan 29 perbedaan yang mengandung informasi. Karakter-karakter ini, diambil dari file2 dalam urutan posisi, membentuk flag: `bronco{y@yyy_Y0u_f0und_m3!!}`. Proses ini menunjukkan bahwa tidak semua perbedaan dalam diff merupakan pesan; tantangan ini dirancang untuk melatih peserta membedakan antara noise dan sinyal yang bermakna.
**Implikasi bagi Praktisi Keamanan** Writeup ini tidak hanya memberikan solusi untuk tantangan tersebut, tetapi juga menyoroti prinsip-prinsip penting dalam keamanan siber. Penggunaan noise berbasis kasus mengingatkan pada teknik penyamaran data di dunia nyata, di mana penyerang dapat menyembunyikan informasi di tengah data yang tampak acak. Selain itu, penggunaan SequenceMatcher mengilustrasikan pentingnya alat diferensiasi yang robust dalam analisis forensik digital, deteksi perubahan tidak sah, dan validasi integritas file.
**Pembelajaran yang Dapat Diambil** Bagi komunitas CTF di Indonesia, writeup ini menjadi referensi berharga untuk mengembangkan strategi dalam menghadapi tantangan yang melibatkan diff dan steganografi. Peserta disarankan untuk selalu memeriksa integritas file, menghindari perbandingan posisi yang mentah, dan mempertanyakan apakah suatu perbedaan dapat dijelaskan oleh transformasi sederhana sebelum menganggapnya sebagai pesan. Prinsip-prinsip ini relevan tidak hanya dalam kompetisi, tetapi juga dalam audit keamanan sehari-hari dan pengembangan perangkat lunak yang aman.
**Flag** Flag akhir dari tantangan ini adalah: `bronco{y@yyy_Y0u_f0und_m3!!}`.
**Kesimpulan** BroncoCTF: Spot the Difference mengajarkan bahwa ketelitian, pemahaman alat diferensiasi yang tepat, dan kemampuan menyaring noise adalah kunci untuk mengungkap informasi tersembunyi. Writeup ini menjadi panduan praktis bagi praktisi keamanan siber di Indonesia untuk meningkatkan keterampilan forensik digital mereka.