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.