Ghidra: Menavigasi dan Memberi Anotasi pada Biner
Impor biner, navigasikan disassembly dan kode hasil dekompilasi, ganti nama variabel, dan tambahkan komentar.
Ghidra: Menavigasi dan Memberi Anotasi pada Biner adalah pelajaran Cyber Security Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cyber Security Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cyber Security Academy mencakup 4 pelajaran total.
Apa Itu Ghidra
Ghidra adalah alat rekayasa balik gratis dan bersumber terbuka yang dikembangkan oleh NSA serta dirilis untuk umum pada 2019. Alat ini mendukung pembongkaran, dekompilasi, pembuatan skrip, dan analisis kolaboratif di Linux, macOS, dan Windows.
Memuat Biner
Membuka biner di Ghidra:
- Buat proyek baru
- Impor berkas (Berkas → Impor Berkas)
- Analisis otomatis berjalan — biarkan hingga selesai (mengenali fungsi, teks, dan tipe data)
- CodeBrowser terbuka dan menampilkan tampilan disasembli serta dekompilator
Antarmuka Ghidra
Jendela utama Ghidra:
- Pohon Program — bagian (.text, .data, .plt)
- Pohon Simbol — fungsi, label, impor, dan ekspor
- Daftar — tampilan disasembli
- Dekompilator — rekonstruksi pseudo-C
- Fungsi — daftar semua fungsi yang teridentifikasi
Menavigasi ke Titik Masuk
Mulai analisis dari titik masuk program atau main():
- Tekan
Guntuk "Buka Ke" alamat atau simbol - Cari "main" di Pohon Simbol
- Klik dua kali fungsi mana pun untuk menavigasi ke sana
Membaca Keluaran Dekompilator
Dekompilator Ghidra menghasilkan pseudo-C yang lebih mudah dibaca daripada assembly. Hasilnya tidak akan sempurna — nama variabel bersifat generik (param_1, local_10), dan alur kontrol mungkin terlihat aneh — tetapi hasil tersebut cukup jelas untuk memahami fungsi kode.
Mengganti Nama Variabel dan Fungsi
Pemberian anotasi meningkatkan keterbacaan:
- Klik kanan variabel → Ganti Nama (atau tekan
L) - Klik kanan fungsi → Ganti Nama Fungsi
- Tambahkan komentar dengan
;(akhir baris) atau gaya/*...*/
Mengganti nama akan membangun konteks seiring Anda semakin memahami biner.
Mengidentifikasi Teks
Teks sangat berguna untuk memahami tujuan program:
- Jendela → Teks Terdefinisi menampilkan semua konstanta teks
- Klik teks untuk melompat ke penggunaannya dalam kode
- Pesan kesalahan, jalur berkas, URL, dan kunci registri mengungkapkan fungsionalitas
Rujukan Silang
Rujukan silang menunjukkan tempat suatu fungsi atau variabel dipanggil atau digunakan. Tekan X pada simbol apa pun untuk melihat semua rujukannya. Ini sangat penting untuk menemukan tempat masukan pengguna masuk ke suatu fungsi atau tempat pemeriksaan keamanan dilakukan.
Membuat Skrip dengan Ghidra
Ghidra memiliki antarmuka skrip Python/Java:
# Python script to find all calls to strcpy:
from ghidra.program.model.symbol import RefType
for ref in currentProgram.getReferenceManager().getReferencesTo(toAddr(0x401234)):
print(ref.getFromAddress())Menganalisis Perangkat Lunak Berbahaya dengan Ghidra
Untuk analisis perangkat lunak berbahaya:
- Identifikasi teknik anti-analisis (anti-pengawakutuan, penyamaran kode)
- Temukan fungsi komunikasi jaringan (soket, koneksi, WinInet)
- Temukan fungsi kriptografi (cari konstanta kotak-S AES: 0x63, 0x7c...)
- Ekstrak URL C2 dari teks yang didekripsi
Ghidra vs IDA Pro
Ghidra vs IDA Pro:
- Ghidra: gratis, sumber terbuka, dapat diprogram dengan skrip, dekompilator yang baik
- IDA Pro: standar industri, analisis lebih cepat, ekosistem pengaya lebih baik, mahal ($$$)
- Untuk sebagian besar tugas, Ghidra sudah sepenuhnya memadai; gunakan IDA untuk laboratorium analisis perangkat lunak berbahaya profesional
Pemeriksaan Singkat: Ghidra
Fitur Ghidra apa yang menampilkan semua lokasi dalam biner yang memanggil atau merujuk ke fungsi atau variabel tertentu?
Ringkasan Pelajaran
Ghidra adalah alat RE gratis yang dikembangkan NSA, dengan fitur disasembli, dekompilasi, dan pembuatan skrip. Alur kerja utama: muat biner, jalankan analisis otomatis, navigasikan ke main(), gunakan dekompilator untuk memahami logika, ganti nama variabel, gunakan rujukan silang untuk melacak aliran data, dan cari teks untuk mendapatkan konteks. Pemberian anotasi membangun pemahaman secara bertahap. Pembuatan skrip mengotomatiskan tugas analisis yang berulang.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Ghidra: Menavigasi dan Memberi Anotasi pada Biner” gratis?
Ya — teks lengkap “Ghidra: Menavigasi dan Memberi Anotasi pada Biner” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cyber Security Academy, upgrade ke CoddyKit PRO. Kursus Cyber Security Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Ghidra: Menavigasi dan Memberi Anotasi pada Biner”?
Impor biner, navigasikan disassembly dan kode hasil dekompilasi, ganti nama variabel, dan tambahkan komentar. Kamu berlatih Cyber Security Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Cyber Security Academy?
Tidak diperlukan pengalaman sebelumnya. Cyber Security Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Ghidra: Menavigasi dan Memberi Anotasi pada Biner” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Cyber Security Academy ini?
Ya. Setiap pelajaran Cyber Security Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Ghidra: Menavigasi dan Memberi Anotasi pada Biner
- Dasar-Dasar Assembly x86/x64 untuk Reverse Engineer
- Analisis Dinamis dengan GDB dan pwndbg
- Dek obfuskasi dan Trik Antianalisis