Kapalı Kaynak Kodlu Programın Kodlarını Görmek

En doğru açıklamayı Recep Baltaş yapmış diyebilirim. IL yani .net ile yazılmış uygulamaları ILSpy, Reflector gibi uygulamalarla açıp direkt olarak kaynak kodunu görebilirsiniz fakat bu Native C++ uygulamaları için geçerli değildir. .net bir kanser ve genellikle amatör veya paylaşıma açık olmayan uygulamalarda kullanıldığından, indirdiğiniz güzel programların .net olma olasılığı düşüktür.

Bu tür programların kaynak kodunu okuyamazsınız, reverse engineering de bu oluyor zaten, programın mimarisi önemli, x86 olduğunu varsayalım. IDA Pro veya benim tavsiyem Ghidra ile uygulamayı açarak assembly kodlarını yorumlamaya başlamanız gerekir.

Bir yorumda RE dersi vermem mümkün değil, fakat kısaca entry point yani uygulamanın çalıştırıldıktan sonraki ilk kodların çalıştığı bölümü inceleyerek adım adım programı çözerek kırıyoruz. Bu tür RE programları, assembly kodunun işleyişine göre bir kod yazar, yani önce işlevi çözer ve bu işleve göre bir kod yazar. Bu kod orijinal kodun aynısı çoğu zaman olmaz, benzeridir hatta bazen çok farklıdır ama aynı işi görür sadece okuması zordur. Bunun sebebi derleyicilerin uygulamayı optimize edip aynı işi okuması daha zor fakat daha verimli bir kod ile yapar.
 
Compile edilmis yazilimlari disassembly ile inceleyebilirsiniz ancak, derlenen yazilimlari direk olarak kaynak koduna erismek kolay degildir, bunun icin ozellikle sirketlerin VMProtect'i kullandigini ve gelistirdigini biliyorum. Tabii ucretsiz degil ancak UPX var alternatif olarak.

 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı