CyberFlow Logo CyberFlow BLOG
Soc L3 Reverse Engineering

String Obfuscation ve Runtime Decryption

✍️ Ahmet BİRKAN 📂 Soc L3 Reverse Engineering

String Obfuscation ve Runtime Decryption konusunu SOC L3 - Tersine Mühendislik - Anti-Debug ve Kernel Analizi baglaminda blog formatinda ogrenin. Temel akis, kavram eslestirmeleri ve analiz mantigi tek bir yapida birlestirildi.

String Obfuscation ve Runtime Decryption

Malware'ler analiz edilmesini zorlaştırmak için API isimlerini, URL'leri, domainleri ve komutları şifreleyebilir. Çalışma anında bu veriler çözülür ve kullanılmaya başlanır. Reverse engineering sırasında string çözme rutinlerinin bulunması kritik öneme sahiptir.

Giris ve Temel Akis

Malware'ler analiz edilmesini zorlaştırmak için API isimlerini, URL'leri, domainleri ve komutları şifreleyebilir. Çalışma anında bu veriler çözülür ve kullanılmaya başlanır. Reverse engineering sırasında string çözme rutinlerinin bulunması kritik öneme sahiptir.

Bu bölümün pratik akışı şu sırayla ilerler:

  • Şifreli Veri Bul
  • Decryption Fonksiyonunu Bul
  • Anahtarı Belirle
  • Veriyi Çöz
  • Sonucu İncele
  • IOC Çıkar

Temel Kavram Eslesmeleri

Malware örneklerinde farklı string gizleme yöntemleri kullanılabilir.

  • XOR Encoding: Basit anahtarla veri gizleme
  • Base64 Encoding: Metin tabanlı dönüştürme
  • AES Encryption: Güçlü simetrik şifreleme
  • Custom Encoding: Özel algoritma ile gizleme

Ilk Cekirdek Kavram

Bu bölümde öne çıkan çekirdek kavram XOR olarak verilir. Birçok malware ailesi string gizlemek için basit ama etkili bir yöntem olan XOR kullanır.

Arac, Komut veya Inceleme Akisi

Runtime decryption sırasında malware önce şifreli veriyi belleğe yükler, ardından çözme fonksiyonunu çalıştırır.

Bu bölümün pratik akışı şu sırayla ilerler:

  • Şifreli Veri Belleğe Yüklenir
  • Anahtar Alınır
  • Çözme Döngüsü Başlar
  • String Oluşturulur
  • API Çağrıları Başlar

Kanit ve Bilesen Iliskileri

String çözme analizinde farklı göstergeler analiste yardımcı olur.

  • Yüksek Entropi: Şifrelenmiş veri göstergesi
  • Çok Sayıda XOR Döngüsü: Obfuscation ihtimali
  • Anlamsız Karakterler: Gizlenmiş string göstergesi
  • Runtime API Resolution: String çözümleme sonrası API kullanımı

Ikincil Odak Noktasi

Bu bölümde öne çıkan çekirdek kavram Entropy olarak verilir. Şifrelenmiş stringler çözülmeden önce genellikle okunabilir değildir ve yüksek rastgelelik gösterir.

Operasyonel Dogrulama ve Raporlama

Reverse engineer string çözme rutinini bulduktan sonra IOC çıkarımı yapabilir.

Bu bölümün pratik akışı şu sırayla ilerler:

  • String Çözülür
  • Domain Tespit Edilir
  • IP Tespit Edilir
  • URL Tespit Edilir
  • IOC Listesi Oluşturulur

Cikti ve Kullanım Amaci

String analizinde kullanılan araçlar farklı amaçlara hizmet eder.

  • FLOSS: Otomatik string çözümleme
  • IDA Pro: Statik kod analizi
  • Ghidra: Disassembly ve decompiler
  • x64dbg: Runtime string analizi

Son Kavram ve Cikis

Bu bölümde öne çıkan çekirdek kavram FLOSS olarak verilir. FireEye tarafından geliştirilen FLOSS aracı, malware içerisindeki gizlenmiş stringleri otomatik olarak çıkarmak için kullanılır.

Bu Egitimden Ne Kazanirsiniz?

Bu icerik, String Obfuscation ve Runtime Decryption konusunu SOC L3 - Tersine Mühendislik - Anti-Debug ve Kernel Analizi baglaminda parcali degil, butunlu bir ogrenme akisina donusturur. Yalnizca kavramlari ezberlemek yerine surec sirasini, bilesenler arasi iliskiyi ve hangi kanitin neden onemli oldugunu kavramayi hedefler.

Ozet

Bu ders kapsaminda one cikan basliklar: XOR Encoding, Base64 Encoding, AES Encryption, Custom Encoding, Yüksek Entropi, Çok Sayıda XOR Döngüsü, Anlamsız Karakterler, Runtime API Resolution, FLOSS, IDA Pro. Egitimin mantigi; once temel akis kurmak, sonra eslestirme ve kavram netlestirme yapmak, en sonda ise bulguyu operasyonel bir sonuca baglamaktir.