IDA Pro Ile Dısassemble

xKemikkiran

Senior Hunter
22 Haz 2020
470
227
Zararlı yerlerde - Aydın
Öncelikle konumuz olan IDA PRO programını "CrackMe" dosyamız ile birlikte açıyoruz. Öncelikle panelleri tanıyalım.

f19styv.PNG


Sol tarafta program içinde kullanılmış olan fonksiyonlar gözükmektedir, Windows fonksiyonları dahil, çift tıklayarak fonksiyonun içine bakabilirsiniz.
(Şimdilik bu kadar bilgi yeterli :)). Biraz da programımızı inceleyelim.

g2v6wvb.PNG


Gördüğünüz gibi yanlış bir değer girdiğimizde hata mesajı olarak "Wrong User Or Password!" hatası alıyoruz.
Bu durumda hata mesajını ne zaman verdiğini bularak karşılaştırma yaptığı yeri bulabiliriz. Tekrar IDA PRO'ya dönüyoruz.

Sol üstte bulunan Dürbün simgesinin önünde T harfi olan icona basarak tüm foksiyonlarda taranan bir değer araması yapabiliriz.
İcona tıklayıp "Wrong User Or Password!" cümlesini aratıyoruz ve çıkan sonuçları inceliyoruz.

b7tggmv.PNG


Sonuçları incelerken aynı fonksiyon içerisinde olduğunu görebiliyoruz. Çift tıklayarak fonksiyona gidiyoruz.



Gördüğünüz gibi 2 adet if yapısı var. Sol taraf doğru olan cevaba, sağ taraf ise yanlış olan tarafa çıkmaktadır.
İlk grafikteki callvirt fonksiyonu formdaki input değerini fonksiyon getirmektedir ayrıca tabloda bir değişken değeri de bulunmaktadır.
2. if yapısına geçtiğimizde ise aynı şekilde bir çağırma fonksiyonu ve değişken bulunmaktadır.

2 tabloda da bu değişken ile bizden aldığı değeri değişken ile kontrol etmektedir. Eğer bizden istediğin değere o değişkenleri girersek bizi doğru yola götürecektir.
Ben daha kolay anlaşılması için karmaşık değerleri User ve Password olarak değiştirdim. Son durumda bu şekilde gözüküyor

r2n0rf2.PNG


User ve Password yazılarının üzerine çift tıklarsanız bunların değerlerini görebilirsiniz:

k5wly84.PNG


Gördüğünüz gibi çok uzun bir değer olduğu için 3 bölüme ayrılmış durumda, bunları üstten başlayarak teker teker birleştirirsek anahtarı elde edebiliriz.
Bu durumda:
Username: "4120320859687358676756853596584584398669376647549759048754758868670685807675395684978360645367396793457645067693576076089760673459067308967"
Password: "567385673805675687667587586756705376876058937689035768076803570605673576059367530670359675677659036789067890763067376396739067350675389067580697536803"

Bu değerleri programımıza giriyoruz ve sonuca bakıyoruz.

d34y0ta.PNG


Gördüğünüz gibi "Correct!" cevabı geldi. Bu demektir ki programı çözebildik.

YAZIMI OKUDUĞUNUZ İÇİN TEŞEKKÜRLER!

3z2uk76.png
 

'GHOST

Uzman üye
31 Mar 2022
1,387
568
Öncelikle konumuz olan IDA PRO programını "CrackMe" dosyamız ile birlikte açıyoruz. Öncelikle panelleri tanıyalım.

f19styv.PNG


Sol tarafta program içinde kullanılmış olan fonksiyonlar gözükmektedir, Windows fonksiyonları dahil, çift tıklayarak fonksiyonun içine bakabilirsiniz.
(Şimdilik bu kadar bilgi yeterli :)). Biraz da programımızı inceleyelim.

g2v6wvb.PNG


Gördüğünüz gibi yanlış bir değer girdiğimizde hata mesajı olarak "Wrong User Or Password!" hatası alıyoruz.
Bu durumda hata mesajını ne zaman verdiğini bularak karşılaştırma yaptığı yeri bulabiliriz. Tekrar IDA PRO'ya dönüyoruz.

Sol üstte bulunan Dürbün simgesinin önünde T harfi olan icona basarak tüm foksiyonlarda taranan bir değer araması yapabiliriz.
İcona tıklayıp "Wrong User Or Password!" cümlesini aratıyoruz ve çıkan sonuçları inceliyoruz.

b7tggmv.PNG


Sonuçları incelerken aynı fonksiyon içerisinde olduğunu görebiliyoruz. Çift tıklayarak fonksiyona gidiyoruz.



Gördüğünüz gibi 2 adet if yapısı var. Sol taraf doğru olan cevaba, sağ taraf ise yanlış olan tarafa çıkmaktadır.
İlk grafikteki callvirt fonksiyonu formdaki input değerini fonksiyon getirmektedir ayrıca tabloda bir değişken değeri de bulunmaktadır.
2. if yapısına geçtiğimizde ise aynı şekilde bir çağırma fonksiyonu ve değişken bulunmaktadır.

2 tabloda da bu değişken ile bizden aldığı değeri değişken ile kontrol etmektedir. Eğer bizden istediğin değere o değişkenleri girersek bizi doğru yola götürecektir.
Ben daha kolay anlaşılması için karmaşık değerleri User ve Password olarak değiştirdim. Son durumda bu şekilde gözüküyor

r2n0rf2.PNG


User ve Password yazılarının üzerine çift tıklarsanız bunların değerlerini görebilirsiniz:

k5wly84.PNG


Gördüğünüz gibi çok uzun bir değer olduğu için 3 bölüme ayrılmış durumda, bunları üstten başlayarak teker teker birleştirirsek anahtarı elde edebiliriz.
Bu durumda:
Username: "4120320859687358676756853596584584398669376647549759048754758868670685807675395684978360645367396793457645067693576076089760673459067308967"
Password: "567385673805675687667587586756705376876058937689035768076803570605673576059367530670359675677659036789067890763067376396739067350675389067580697536803"

Bu değerleri programımıza giriyoruz ve sonuca bakıyoruz.

d34y0ta.PNG


Gördüğünüz gibi "Correct!" cevabı geldi. Bu demektir ki programı çözebildik.

YAZIMI OKUDUĞUNUZ İÇİN TEŞEKKÜRLER!

3z2uk76.png
Emeğine sağlık.
 

ZVkill3r

Katılımcı Üye
16 Tem 2019
487
50
elinize sağlık. programın temiz halini bulamadım. link verebilir misiniz?
 
Ü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.