Cyber Security Academy · Pelajaran

Ghidra: Menavigasi dan Menganotasi Perduaan

Import perduaan, navigasi pemasangan dan kod yang dinyahkompil, namakan semula pemboleh ubah dan tambahkan ulasan.

Pelajaran 1 daripada 413 langkah

Ghidra: Menavigasi dan Menganotasi Perduaan ialah pelajaran Cyber Security Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Cyber Security Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Cyber Security Academy merangkumi sejumlah 4 pelajaran.

Apakah Ghidra

Ghidra ialah alat kejuruteraan songsang percuma dan sumber terbuka yang dibangunkan oleh NSA dan dikeluarkan kepada umum pada 2019. Ia menyokong pembongkaran, penyahkompilan, penskripan dan analisis kolaboratif merentas Linux, macOS dan Windows.

Memuatkan Binari

Membuka binari dalam Ghidra:

  1. Cipta projek baharu
  2. Import fail (Fail → Import Fail)
  3. Analisis automatik berjalan — biarkan sehingga selesai (mengenal pasti fungsi, rentetan dan jenis data)
  4. CodeBrowser dibuka, memaparkan paparan nyahhimpunan dan penyahkompil

Antara Muka Ghidra

Tetingkap utama Ghidra:

  • Pokok Program — bahagian (.text, .data, .plt)
  • Pokok Simbol — fungsi, label, import dan eksport
  • Senarai — paparan nyahhimpunan
  • Penyahkompil — pembinaan semula pseudokod C
  • Fungsi — senarai semua fungsi yang dikenal pasti

Menavigasi ke Titik Masuk

Mulakan analisis pada titik masuk program atau main():

  • Tekan G untuk "Pergi Ke" alamat atau simbol
  • Cari "main" dalam Pokok Simbol
  • Klik dua kali pada mana-mana fungsi untuk menavigasi kepadanya

Membaca Keluaran Penyahkompil

Penyahkompil Ghidra menghasilkan pseudokod C yang lebih mudah dibaca berbanding bahasa himpunan. Hasilnya tidak akan sempurna — nama pemboleh ubah adalah umum (param_1, local_10), dan aliran kawalan mungkin kelihatan pelik — tetapi ia mendedahkan logik dengan cukup jelas untuk memahami perkara yang dilakukan oleh kod.

Menamakan Semula Pemboleh Ubah dan Fungsi

Anotasi meningkatkan kebolehbacaan:

  • Klik kanan pada pemboleh ubah → Namakan Semula (atau tekan L)
  • Klik kanan pada fungsi → Namakan Semula Fungsi
  • Tambah komen menggunakan gaya ; (hujung baris) atau /*...*/

Penamaan semula membina konteks secara beransur-ansur apabila Anda semakin memahami binari.

Mengenal Pasti Rentetan

Rentetan amat berguna untuk memahami tujuan:

  • Tetingkap → Rentetan Ditakrifkan memaparkan semua pemalar rentetan
  • Klik pada rentetan untuk pergi ke penggunaannya dalam kod
  • Mesej ralat, laluan fail, URL dan kunci pendaftaran mendedahkan kefungsian

Rujukan Silang (XREF)

Rujukan silang menunjukkan tempat sesuatu fungsi atau pemboleh ubah dipanggil atau digunakan. Tekan X pada mana-mana simbol untuk melihat semua rujukan. Ini amat penting untuk mencari tempat masukan pengguna memasuki sesuatu fungsi atau tempat pemeriksaan keselamatan berlaku.

Penskripan dengan Ghidra

Ghidra mempunyai API penskripan 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 Perisian Hasad dengan Ghidra

Untuk analisis perisian hasad:

  • Kenal pasti helah antianalisis (antinyahpepijatan, pengaburan kod)
  • Cari fungsi komunikasi rangkaian (soket, sambung, WinInet)
  • Cari fungsi kriptografi (cari pemalar kotak-S AES: 0x63, 0x7c...)
  • Ekstrak URL C2 daripada rentetan yang dinyahsulit

Ghidra berbanding IDA Pro

Ghidra berbanding IDA Pro:

  • Ghidra: percuma, sumber terbuka, boleh disk­ripkan, penyahkompil yang baik
  • IDA Pro: piawaian industri, analisis lebih pantas, ekosistem pemalam lebih baik, mahal ($$$)
  • Untuk kebanyakan tugas, Ghidra mempunyai keupayaan sepenuhnya; gunakan IDA untuk makmal analisis perisian hasad profesional

Semakan Pantas: Ghidra

Ciri Ghidra manakah yang menunjukkan semua lokasi dalam binari yang memanggil atau merujuk kepada fungsi atau pemboleh ubah tertentu?

Ringkasan Pelajaran

Ghidra ialah alat KEJURUTERAAN songsang percuma yang dibangunkan NSA, dengan nyahhimpunan, penyahkompilan dan penskripan. Aliran kerja utama: muatkan binari, jalankan analisis automatik, navigasi ke main(), gunakan penyahkompil untuk memahami logik, namakan semula pemboleh ubah, gunakan rujukan silang untuk menjejaki aliran data, dan cari rentetan untuk mendapatkan konteks. Anotasi membina pemahaman secara berperingkat. Penskripan mengautomatikkan tugas analisis yang berulang.

Percuma untuk bermula

Pelajari Cyber Security Academy dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
76
Pelajaran
303

Soalan Lazim

Adakah pelajaran “Ghidra: Menavigasi dan Menganotasi Perduaan” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Cyber Security Academy, termasuk “Ghidra: Menavigasi dan Menganotasi Perduaan”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Cyber Security Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Ghidra: Menavigasi dan Menganotasi Perduaan”?

Import perduaan, navigasi pemasangan dan kod yang dinyahkompil, namakan semula pemboleh ubah dan tambahkan ulasan. Anda berlatih Cyber Security Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Cyber Security Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Cyber Security Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Ghidra: Menavigasi dan Menganotasi Perduaan” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Cyber Security Academy ini?

Ya. Setiap pelajaran Cyber Security Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Ghidra: Menavigasi dan Menganotasi Perduaan
  2. Asas Pemasangan x86/x64 untuk Penganalisis Songsang
  3. Analisis Dinamik dengan GDB dan pwndbg
  4. Penyahkaburan dan Helah Antianalisis
← Kembali ke Cyber Security Academy