Tersine Mühendislik Nedir? Yapay Zekâ ve GitHub’daki Popüler RSA Repolarıyla Kodun Şifresi Nasıl Kırılıyor?

Ghidra, RsaCtfTool ve AI decompiler ajanlarının ikili makine kodlarını, kriptografik anahtarları ve şifreli algoritmaları dakikalar içinde çözme anatomisi.

Karanlık siber güvenlik laboratuvarında ikili makine kodlarını ve RSA kriptografik şifreleme bloklarını analiz eden yapay zeka decompiler terminali

Yazılım dünyasının en gizemli ve prestijli uzmanlık alanlarından biri olan tersine mühendislik (Reverse Engineering), yapay zekânın yükselişiyle birlikte tarihinin en büyük dönüşümünü yaşıyor. Eskiden kıdemli bir güvenlik araştırmacısının haftalarca assembly komutlarını inceleyerek çözdüğü karmaşık algoritmalar, artık LLM destekli otonom analiz ajanları ve GitHub’daki popüler kriptografi repoları sayesinde dakikalar içinde deşifre ediliyor.

Peki tersine mühendislik tam olarak nedir ve yapay zekâ bu gücü arkasına aldığında dijital güvenliğin temel direği olan RSA şifrelemesi gibi devasa kaleleri nasıl yerle bir edebiliyor?


İkili Koddan Kaynak Koda: Tersine Mühendisliğin Temel Mantığı

Bir yazılımcı C, C++ veya Rust dilinde kod yazdığında bu metin derleyici (compiler) tarafından sıfırlara ve birlere dönüştürülür. Bu ikili makine kodunda değişken adları, fonksiyon başlıkları ve yorum satırları silinir; geriye yalnızca işlemcinin (CPU) anlayacağı ham talimatlar kalır.

Tersine mühendislik, bu süreci tersten işletmektir:

  • Disassembler: Ham ikili dosyayı işlemci komutlarına (MOV, PUSH, JMP, XOR) çevirir.
  • Decompiler: Assembly kodunu analiz ederek insan tarafından okunabilir bir C/C++ kod yapısı üretmeye çalışır.
  • Güvenlik Analizi: Güvenlik ekipleri bu yöntemle zararlı yazılımların (malware) arkasındaki komuta merkezini bulur, yazılımlardaki sıfır-gün (zero-day) açıklarını kapatır veya çalınan verilerin izini sürer.

Yapay Zekâ ve Otonom Decompiler Ajanları

Geleneksel decompiler araçlarının ürettiği kod son derece karmaşık, anlamsız değişken isimleriyle (sub_401000, var_8) dolu ve anlaşılması güçtü. Yapay zekâ bu tabloyu kökten değiştirdi:

  • Anlamsal Yeniden İnşa: Ghidra ve Rizin gibi platformlara bağlanan yapay zekâ ajanları (GitHub’da viral olan REA ve REagent gibi projeler), fonksiyonun matematiksel amacını çözer. Ajan, karmaşık döngünün aslında bir “AES şifre çözme rutini” olduğunu anlar ve değişkenleri encryption_key, buffer_size şeklinde yeniden adlandırır.
  • Zafiyet Tespiti: Ajan, kod tabanındaki bellek taşması (buffer overflow), format string veya güvensiz bellek yönetimi açıklarını saniyeler içinde işaretler.
Monitörde dekompile edilmiş C kodları, assembly komutları ve kriptografik saldırı algoritmalarını gösteren siber adli bilişim çalışma alanı
Yapay zeka ajanları, Ghidra ve RsaCtfTool gibi açık kaynaklı araçları kontrol ederek derlenmiş yazılımların içindeki şifreleme anahtarlarını dakikalar içinde tespit ediyor.

GitHub’ın Meşhur Kriptografi Reposu: RsaCtfTool ve RSA Açıkları

Tersine mühendislik dendiğinde akla gelen en kritik senaryolardan biri, şifrelenmiş bir yazılımın veya haberleşme kanalının anahtarını bulmaktır. GitHub’da güvenlik araştırmacıları ve CTF (Capture the Flag) yarışmacıları arasında efsaneleşen RsaCtfTool, bu alandaki açık kaynaklı zirvedir.

RSA şifrelemesi, teorik olarak iki büyük asal sayının (p ve q) çarpımından elde edilen n (modulus) değerinin çarpanlarına ayrılamaması varsayımına dayanır. Ancak pratikte yazılımcılar ölümcül matematiksel hatalar yapar:

  1. Wiener ve Boneh-Durfee Saldırıları: Şifre çözme işlemini hızlandırmak için küçük bir gizli üs (d) seçilmişse, RsaCtfTool zincir kesirler (continued fractions) ve LLL kafes indirgemesi (lattice reduction) ile d anahtarını dakikalar içinde çözer.
  2. Fermat Çarpanlara Ayırma: Eğer p ve q asal sayıları birbirine sayı doğrusunda çok yakın seçilmişse, algoritma saniyeler içinde asal çarpanları ayırır.
  3. Hastad Küçük Açık Üs Saldırısı: e=3 gibi düşük üsler kullanıldığında ve aynı mesaj birden fazla alıcıya gönderildiğinde, Çin Kalan Teoremi (CRT) kullanılarak şifreli metin doğrudan çözülür.

Yapay zekâ ajanları, derlenmiş bir ikili dosyayı tararken büyük tamsayı dizilerini ve kriptografik sabitleri anında tespit eder; bulunan parametreleri otomatik olarak RsaCtfTool’a paslayarak şifreli veriyi insan müdahalesi olmadan kırar.


Çift Kullanımlı (Dual-Use) Teknoloji Çıkmazı

Yapay zekânın tersine mühendisliğe entegre olması, siber güvenlik dünyasını iki ucu keskin bir kılıçla baş başa bıraktı:

  • Savunma Tarafı: Siber güvenlik analistleri artık bir fidye yazılımını (ransomware) birkaç saat içinde analiz edip kurbanların dosyalarını kurtaracak anahtarları türetebiliyor.
  • Saldırı Tarafı: Siber korsanlar ise ticari yazılımların lisans denetim mekanizmalarını dakikalar içinde atlatabiliyor (cracking) ve kapalı kaynaklı sistemlerin güvenlik açıklarını otomatiğe bağlayarak sıfır-gün silahları geliştirebiliyor.

Sonuç: Yapay Zekâ Çağında İkili Kod Analizinin Geleceği

Tersine mühendislik, yapay zekâ ve açık kaynaklı kriptanaliz araçlarının birleşimiyle birlikte elit bir azınlığın sanatı olmaktan çıkıp yazılım mühendisliğinin temel bir katmanına dönüştü. GitHub’daki RsaCtfTool gibi güçlü cephaneliklerin yapay zekâ zekasıyla birleştiği bu yeni dönemde, “güvenliği gizlilikte arayan” (security through obscurity) kapalı kaynak anlayışı çökmüş; yerini matematiksel olarak kusursuz ve açık denetime tabi modern kriptografik standartlara bırakmıştır.

Sık sorulan sorular

Yapay zekâ derlenmiş bir .exe veya ELF dosyasının kaynak kodunu birebir çıkarabilir mi?

Değişken adları ve yorum satırları derleme sırasında silindiği için eski araçlar yalnızca anlaşılması zor assembly kodu üretiyordu. Ancak modern LLM ajanları, assembly ve ara dilleri (IL) analiz ederek değişkenlere anlamlı isimler atayabilmekte ve orijinal C/C++ koduna çok yakın okunabilir kaynak kod üretebilmektedir.

GitHub’daki RsaCtfTool reposu RSA şifrelemesini nasıl kırıyor?

RsaCtfTool, RSA algoritmasının matematiksel kusurlarını hedef alır. Eğer yazılımcı çok küçük bir asal sayı (p ve q) seçmişse, p ve q birbirine çok yakınsa (Fermat saldırısı), açık üs çok küçükse (Hastad saldırısı) veya gizli üs küçükse (Wiener ve Boneh-Durfee saldırıları), araç özel anahtarı (d) saniyeler içinde matematiksel olarak yeniden türetir.

Tersine mühendislik yasal mıdır?

Tersine mühendisliğin yasallığı amaca bağlıdır. Kendi sistemlerinizin güvenliğini denetlemek, zararlı yazılımları (malware) analiz etmek veya telif ihlali barındırmayan birlikte çalışabilirlik (interoperability) sağlamak hukuken korunur; ancak ticari sırları çalmak veya yazılım korumalarını kırmak yasadışıdır.

WebTuring AtlasBu haberin arka planı

Konunun teknik geçmişi ve bağlamı ansiklopedimizde:

Tüm WebTuring Atlas ansiklopedisi →

Yapay Zeka kategorisinden