CyberFlow Logo CyberFlow BLOG
Soc L3 Reverse Engineering

Import Address Table (IAT) Manipülasyonu

✍️ Ahmet BİRKAN 📂 Soc L3 Reverse Engineering

Import Address Table (IAT) Manipülasyonu 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.

Import Address Table (IAT) Manipülasyonu

Import Address Table (IAT), bir PE dosyasının ihtiyaç duyduğu API adreslerini tuttuğu tablodur. Malware'ler API çağrılarını gizlemek, güvenlik ürünlerinden kaçmak veya davranışlarını değiştirmek için IAT manipülasyonu gerçekleştirebilir. Reverse engineering sırasında IAT'nin incelenmesi programın hangi API'leri kullandığını ortaya çıkarır.

Giris ve Temel Akis

Import Address Table (IAT), bir PE dosyasının ihtiyaç duyduğu API adreslerini tuttuğu tablodur. Malware'ler API çağrılarını gizlemek, güvenlik ürünlerinden kaçmak veya davranışlarını değiştirmek için IAT manipülasyonu gerçekleştirebilir. Reverse engineering sırasında IAT'nin incelenmesi programın hangi API'leri kullandığını ortaya çıkarır.

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

  • LoadLibraryA
  • GetProcAddress
  • IAT Entry Bul
  • API Adresini Değiştir
  • Çağrıları İzle

Temel Kavram Eslesmeleri

IAT manipülasyonu sırasında kullanılan temel API'ler farklı görevler üstlenir.

  • LoadLibraryA: DLL yükleme
  • GetProcAddress: Fonksiyon adresi alma
  • VirtualProtect: Bellek koruma ayarlarını değiştirme
  • WriteProcessMemory: Belleğe veri yazma

Ilk Cekirdek Kavram

Bu bölümde öne çıkan çekirdek kavram GetProcAddress olarak verilir. IAT analizi sırasında DLL içerisindeki fonksiyon adreslerini çözümlemek için özel bir API kullanılır.

Arac, Komut veya Inceleme Akisi

PE dosyalarında IAT analizi yapılırken import edilen DLL ve API'ler belirli sırayla incelenir.

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

  • KERNEL32.DLL
  • CreateFileA
  • ReadFile
  • WriteFile
  • CloseHandle

Kanit ve Bilesen Iliskileri

IAT üzerinde bulunan API'ler uygulamanın davranışını anlamak için önemli ipuçları verir.

  • CreateFileA: Dosya işlemleri
  • RegSetValueExA: Registry işlemleri
  • CreateProcessA: Süreç yönetimi
  • connect: Ağ iletişimi

Ikincil Odak Noktasi

Bu bölümde öne çıkan çekirdek kavram connect olarak verilir. Bir PE dosyasında çok sayıda ağ API'si bulunması C2 iletişimi ihtimalini artırabilir.

Operasyonel Dogrulama ve Raporlama

IAT Hooking saldırılarında saldırganlar API adreslerini değiştirerek çağrıları kendi kodlarına yönlendirebilir.

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

  • IAT Bul
  • VirtualProtect
  • Yeni Adres Yaz
  • API Çağrısı Yakala
  • Orijinal Akışa Dön

Cikti ve Kullanım Amaci

IAT manipülasyonu sırasında kullanılan teknikler farklı amaçlar için uygulanır.

  • IAT Hooking: API çağrılarını yönlendirme
  • API Monitoring: Çağrıları izleme
  • Import Reconstruction: Silinmiş importları geri oluşturma
  • Thunk Analysis: Import geçiş noktalarını inceleme

Son Kavram ve Cikis

Bu bölümde öne çıkan çekirdek kavram IAT Hooking olarak verilir. IAT üzerinde yapılan değişikliklerle API çağrılarının başka adreslere yönlendirilmesi mümkündür.

Bu Egitimden Ne Kazanirsiniz?

Bu icerik, Import Address Table (IAT) Manipülasyonu 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: LoadLibraryA, GetProcAddress, VirtualProtect, WriteProcessMemory, CreateFileA, RegSetValueExA, CreateProcessA, connect, IAT Hooking, API Monitoring. Egitimin mantigi; once temel akis kurmak, sonra eslestirme ve kavram netlestirme yapmak, en sonda ise bulguyu operasyonel bir sonuca baglamaktir.