NSA'nın Tersine Mühendislik Aracı Ghidra • Ceys

Ceys

Yaşayan Forum Efsanesi
2 Nis 2016
7,658
4,965
Orhun Nehri
V97Y4B.png


Ghidra adlı yazılım NSA'nın siber güvenlikçileri tarafından geliştirlen bir tersine mühendislik aracıdır.
Ghidranın amacı kötü amaçlı yazılımları tespit etmek ve analizini yapmak için kullanılır, ağlardaki açıkları bulabilir.

Ghidra windows, linux, MACOs ve bazı başka platformlar için çalışma desteği sağlar. Ayrıca kullanıcılar kendi ghidra eklentilerini oluşturabilirler.

Kurlulumu

Öncelikle https://ghidra-sre.org/ şu siteye girip aracı indirin. Dosya rar şeklindedir. Bu yazılımı çalıştırmanız için bilgisayarınızda java jdk 11 ve üzeri sürümü yüklü olması gerekir. Yüklü değilse https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html bu siteye girip anlaşmayı kabul edin ve bilgisayarınıza uygun olan jdkyı indirin ve kurun.

Gerekli eklentileri kurduktan sonra ghidrayı yüklemeye geçelim.
İndirdiğiniz dosyadaki ghidraRun.bat dosyasını yönetici olarak çalıştırın.(Sağ tıkla, yönetici olarak çalıştır.)
Ardından cmd ekranı açılacaktır. Ekran şöyle olması gerekiyor.

cN8d54.png


Burda jdk yolunu belirtmeniz gerekiyor zaten yüklüyse direk diğer adıma geçiyor. Ama yüklü değilse cmd ekranında kalır. Otomatik bulmazsa jdk klasör yolunu belirtin ve devam edin.

Ardından diğer adıma geçiyor. Burda I Agree (Kabul ediyorum) seçeneğine tıklayarak devam edin. Söyle bir ekran:

BfPz2W.png


Başlatılıyor...

WI2zJI.png


Ardından uygulama açılacaktır. Şöyle bir ekran ile karşılacaksınız. Öndeki pencere ipuçlarını gösteriyor. Close diyerek kapatın ve asıl pencereye gelin. Bu pencere proje yöneticisi penceresidir ve bu pencereye ulaşmışsanız kurulumda herhangi bir sıkıntı oluşmamıştır.

MH387O.png


xMO1AI.png


Şimdi basit bir uygulama yapalım.

Proje yönetim ekranında iken üst sekmelerde buluna File>>New Project... yolunu izleyin.

N6QT9f.png


Karşınıza gelen pencerede non-shared project seçeneğini işaretleyerek devam edin. Bu paylaşılmayan bir proje ile çalışacağımızı diğer ise paylaşılan bir proje ile çalıaşcağımızı belirtir. Ardından Next>> butonuna tıklayın..

CS4fdK.png


Next'e bastıktan sonra karşınıza gelen ekranda; projenin nereye kaydedileceğini ve proje adını seçin. Üstteki proje yolu ve alttaki de proje adıdır. Yerleri doldurduktan sonra Finish butonuna tıklayın.

55V101.png


Projemiz oluştu ve şöyle bir ekran ile karşılaştık.

C3M5eb.png


Buraya kadar sorun yoksa bir .exe dosyasını projemize dahil edelim..
Bunu yapmak için File>>İmport File yolunu izliyoruz ya da .exe dosyasını sürükleyip proje sayfamızda bulunan klasörün üzerine bırakıyoruz.

dI10VJ.png


Hemen ardından yüklendiğini gösteren bir pencere açılacaktır.

T61NfW.png


Yüklendikten sonra bazı ayarlar yapmak içi şöyle bir pencere açılacaktır.

B6RS0f.png


Bu pencereden Options butonuna tıklayıp ayarlar menüsünden istediğiniz ayarı etkinleştirebilirsiniz.
ince bir ayar yapmal için Load External Libraries yani harici kütüphaneleri yükle seçeneğini aktif ediyoruz. Bu ayar eğer programda harici başka bir kütüphane kullanılmışsa onlarıda raporlarda gösterir.

9faS1H.png


Ardında Ok deyip her iki pencereyide kapatıyoruz.

Hemen sonra yüklemiş olduğumuz dosya analiz edilmeye başlayacaktır ve bunu içe akracaktır.

dfPAS3.png


Yükleme tamamlandığı zaman çalışma alanında şöyle analiz raporları belirecektir.

L8M18S.png


yüklemeden hemen sonra gelecek olan pencere program hakkında özet bilgileri içeren penceredir. Bunu okuyarak ön bilgi sahibi olabilirsiniz.

aLPHN0.png


Bu işlemlerden sonra Ghidra program açmaya hazırdır. hemen bir program üzerinden deneyelim..

Bir programı açmak için programın adı ile oluşan metin belgesini kutucuk içindeki ejderhanın üzerine sürükleyip bırakın ve açılmasını bekleyin.

WyVfHf.png


aKeC5A.png


Şöyle bir pencere açılacaktır. Bu menü program hiç analiz edilmediyse açılır. Eğer analiz yapmışsanız açılmayacaktır. Programı analiz etmek için menüdeki üst pencerede bulunan Yes butonuna basın.

e4NW17.png


Yes dedikten sonra analiz ayar menüsü açılacaktır. Bu menü analiz listesini gösteriyor. Yani yapmak istediğiniz analiz hangisi ise onu seçebilirsiniz. İstediğiniz seçimi yaptıktan sonra Analyze butonuna basın.

y9bcVz.png


Analizin başladığını sağ alt kısımdan görebilirsiniz. Dilerseniz en sağda bulunan kırmızı exit işaretine basarak sonlandırabilirsiniz.

c9Qybz.png


Analiz bittikten sonra varsayılan kodunuz tarayıcı aracı ile birlikte açılır ve programınızın kodları görünür.

C3U99I.png


bN5xJK.png


5WT90A.png


şimdi üstteki resime bakarak paneli açıklayayım.

Kırmızı seçili yer, Program Tree bu program ağacıdır. Programın yapısını gösterir ve bazı işlemleriyapmak için kullanılır.

Mavi tonlu seçili yer sembol ağacını gösterir. burası sembol bulma ve arama yapmayı sağlar. aramayı find kısmına yazarak yapıyoruz.

Siyah seçili yer ise veri tipi yöneticisi olarak adlandırılıyor. Burda veri türlerini bulma uygulama oluşturma işlerini yapıyoruz.

Şimdi belli bir adrese gitmek için G tuşuna basarak gidebilirsniz. herhangi bir satır adresi yazın ve Ok deyip ilerleyin..

3VbK55.png


şu soldaki pencere programın assembly kodlarını gösterir ve sağdaki ise programın C kodlarını gösteriyor.

Cc21NP.png


Evet beim anlatacaklarım bu kadar. Dilerseniz F1 tuşuna basarak yardım menüsünü açabilir ve ihtiyacınız olanı arayabilirsiniz.

Esen kalın..
 
Son düzenleme:

'Creative

Kıdemli Üye
16 Mar 2017
3,246
92
Herkesin gözünü kısarak yaklaştığı bir araç ama bence tersine mühendislik alanında çok yararlı olacaktır.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.