Everything Is “Open Source” Jika Kamu Tahu Reverse Engineering
Reverse engineering adalah keterampilan inti bagi siapa saja yang ingin memahami perangkat lunak sampai ke “mesinnya” — baik untuk keamanan, debugging, maupun kompetisi capture-the-flag (CTF). Dalam video Low Level (15 Sep 2025) penulis menunjukkan sebuah workflow praktis: dari analisis biner sampai mengekstrak flag pada challenge Flag Casino (Hack The Box). Artikel ini merangkum proses tersebut secara profesional, natural, dan praktis — tanpa mengabaikan aspek etika.
Reverse engineering adalah proses membongkar sebuah program yang sudah dikompilasi menjadi kode mesin untuk mengerti apa yang dilakukan pembuatnya. Di dunia keamanan komputer, RE dipakai untuk:
Di CTF, kamu diberikan binari yang dapat kamu jalankan sendiri — konteks legal dan etisnya aman — sehingga kita bisa bereksperimen tanpa melanggar hukum.
Contoh workflow pada video memanfaatkan alat-alat standar RE:
file — mengetahui format dan arsitektur biner (mis. ELF 64-bit).strings — mengekstrak teks ASCII dari biner untuk menemukan pesan, nama fungsi, atau indikator lain.struct) untuk manipulasi biner dan skrip automasi.Hex-Rays (IDA Pro) disebut sebagai sponsor video — IDA adalah salah satu tool paling populer untuk disassembly/decompilation.
Berikut langkah-langkah analitis yang diterapkan untuk menemukan flag pada challenge:
Menjalankan biner menunjukkan program meminta input (place your bets) dan menolak (security) jika input salah. Ini memberi petunjuk target (nilai input yang harus cocok).
file dan stringsfile casino → menandakan ELF 64-bit (kompilasi modern).strings casino → menemukan penggunaan fungsi seperti srand, rand, printf, scanf → sinyal kuat bahwa generator pseudo-random digunakan dan kemungkinan ada seed yang berasal dari input pengguna.Dengan membuka biner di IDA:
main, cari call ke scanf (di mana input dibaca).srand(user_input) dan kemudian rand() yang dibandingkan dengan array check[].srand(user_char), rand() kemudian bandingkan dengan nilai di check array.Karena input dibaca per-char (1 byte), ruang pencarian hanya 256 kemungkinan per posisi — sangat kecil. Ini memungkinkan strategi brute-force deterministik: untuk setiap nilai 0..255, srand(i); r = rand(); catat r — buat lookup table mapping r → char(i).
Contoh logika sederhana (konsep):
// konsep: mapping seed -> rand()
for (int i = 0; i < 256; ++i) {
srand(i);
int r = rand();
printf("%d: %08x\n", i, r);
}
Hasilnya adalah daftar pasangan seed→rand yang dipakai sebagai kamus lookup.
check[] dari biner (IDA Python)Gunakan IDA/Python untuk mendapatkan bytes dari alamat array check dan mengekstraknya ke host. Karena data tersimpan sebagai 32-bit little-endian, gunakan struct.unpack untuk mengkonversi ke integer.
Untuk setiap integer val di check[], cari val pada lookup table dan terjemahkan menjadi karakter ASCII yang sesuai. Menggabungkan semua karakter memberi string yang diharapkan — flag. Dalam contoh video, hasilnya adalah frasa readable seperti HackTheBox....
rand() pada C standar adalah PRNG deterministik — jika seed (srand) diketahui, output rand() dapat diprediksi. Challenge sengaja menggunakan seed yang berasal dari input 1-byte, sehingga ruang pencarian kecil dan rentan.strings) dan kemampuan memetakan nilai numerik di binary ke input-ascii dengan bantuan struct/IDA Python.rand()/srand() vs. generator kripto (e.g. /dev/urandom, libsodium).Reverse engineering bukan sekadar “membuka kunci” — ini adalah cara berpikir: mengamati perilaku, menebak struktur, verifikasi eksperimental, lalu otomatisasi. Untuk yang serius belajar keamanan atau ingin memahami perangkat lunak sampai ke akarnya, RE adalah jalan yang menantang namun sangat rewarding. Jika kamu tertarik mencoba challenge yang sama, lakukan di lingkungan CTF yang aman — dan nikmati prosesnya.
Sumber : everything is open source if you know reverse engineering (hack with me!)
Ilmu komputer teoretis (theoretical computer science) memiliki hubungan erat dengan matematika karena pemrograman menggunakan algoritma,…
https://www.youtube.com/watch?v=SuaxadRqJpM Pengantar Suara manusia adalah instrumen yang kita semua mainkan — sekaligus alat paling kuat…
https://www.youtube.com/watch?v=Ew59SKy181Y Analisis Heni Ozi Cukier mengungkap empat dimensi — sosial, ekonomi, politik, dan militer —…
https://www.youtube.com/watch?v=ZAqIoDhornk Ringkasan padat dari konsep-konsep utama fisika—dari Newton hingga mekanika kuantum—dengan contoh sehari-hari dan makna…
https://www.youtube.com/watch?v=olQh39MoJsQ Cara Cepat Mengenal Huruf Sirilik dan Logika Bahasa Rusia untuk Pemula Pendahuluan: Bahasa Asing…
https://www.youtube.com/watch?v=UJGsfLa8dmE 1. Korelasi antara Iman, Ilmu, dan Takwa UAH menjelaskan bahwa iman dan ilmu merupakan…