Ana içeriğe geç

Reverse Engineering'e Giriş: Ghidra ile İlk Binary Analizi

0 yanıt16 görüntülenme
<h2>Reverse Engineering'e Giriş: Ghidra ile İlk Binary Analizi</h2> <p>Ghidra, NSA'nın açık kaynak olarak yayımladığı güçlü bir reverse engineering aracıdır. Basit bir crackme binary'sini analiz ederek başlamak, RE dünyasına en iyi giriş yoludur.</p> <h3>Ghidra Kurulum ve İlk Adımlar</h3> <pre><code># Java 17+ gerekli # https://ghidra-sre.org adresinden indir ./ghidraRun # Linux/Mac ghidraRun.bat # Windows</code></pre> <p>Yeni proje oluşturun → Binary'yi import edin → Analiz edin (Auto Analyze). Ghidra assembly'yi otomatik olarak C benzeri pseudo-code'a dönüştürür.</p> <h3>Temel Kavramlar</h3> <ul> <li><strong>Disassembly:</strong> Binary'yi assembly talimatlarına dönüştürme.</li> <li><strong>Decompilation:</strong> Assembly'yi yüksek seviyeli dile (C benzeri) dönüştürme.</li> <li><strong>Symbol Table:</strong> Fonksiyon ve değişken isimleri (strip edilmişse boş olabilir).</li> <li><strong>Cross-references (XREFs):</strong> Bir fonksiyonun nereden çağrıldığını gösterir.</li> </ul> <h3>Crackme Analizi Örneği</h3> <pre><code>; Tipik bir serial check main: call get_input ; kullanıcıdan serial al call check_serial ; doğrulama fonksiyonu test eax, eax ; sonuç 0 mı? jne wrong_serial ; 0 değilse yanlış ; doğru serial mesajı check_serial: ; XOR, ROT veya basit matematiksel işlem ; Ghidra bunu C'ye dönüştürür</code></pre> <h3>Dinamik Analiz ile Birleştirme</h3> <p>Ghidra statik analiz yapar. Dinamik analiz için GDB (Linux) veya x64dbg (Windows) kullanın. İkisini birleştirmek en etkili yaklaşımdır:</p> <ul> <li>Ghidra ile genel yapıyı anlayın.</li> <li>GDB/x64dbg ile runtime'da breakpoint koyun ve değerleri izleyin.</li> </ul> <h3>Pratik Kaynaklar</h3> <ul> <li>crackmes.one — ücretsiz crackme koleksiyonu</li> <li>pwn.college — RE ve binary exploitation eğitimi</li> <li>CTFtime.org — CTF yarışmaları (RE kategorisi)</li> </ul>