X86 Tersine Mühendislik Eğitimi

Amaç

Katılımcıların zararlı yazılım analizi ve yazılım güvenlik araştırması yapabilmesi için gerekli temel X86 mimarisi, tersine mühendislik metodu ve araçları bilgilerine sahip olmalarını hedeflemektedir. Bu bilgiler ayrıca X86 mimarisinde geliştirilmiş uygulamalar için istemci tarafı kontrollerinin aşılabilmesinde de kullanılabilecektir. Eğitim X86 mimarisine yönelik olmakla birlikte izlenecek temel tersine mühendislik metodu ve kullanılacak temel araçlar açılarından diğer mimarilerde yapılacak çalışmalar için de gerekli altyapı sağlanacaktır.

Ön Koşullar

Eğitimin ana konuları olmakla birlikte Assembly diline ve binary debugging konularına aşina olunması eğitimin takip edilebilmesini kolaylaştıracaktır. Katılımcıların herhangi bir dilde uygulama geliştirme ve derleme deneyimine, sürekli biçimde olmasa bile, sahip olmalarında fayda bulunmaktadır.

Katılımcılar

Bilgi güvenliği ve olay müdahale uzmanları, bilgi güvenliği ve bilgi teknolojileri denetçileri, yazılım güvenliği ile ilgilenen yazılım geliştirme uzmanları eğitime katılabilir.

İçerik
  • High level diller ve makine dilleri
  • Derleme teorisi
  • Sanal makine teknolojisi
  • X86 Assembly Diline Giriş
    • Register’lar
    • Sık kullanılan assembly komutları
    • Akış kontrolü
  • PE dosya formatı
    • Image optional header yapısı
    • Image section header yapıları
    • Temel section’lar
  • Basit statik analiz teknikleri
    • String veriler
    • Import edilen fonksiyonlar
  • X86 hafıza organizasyonu
    • Stack işleyişi
    • Import modüllerin yüklenmesi
    • Import adreslerin belirlenmesi
  • IDA Pro ile high level dillerin makine diline dönüşüm örnekleri
    • IDA Pro’nun kullanımı ve disassembly pencereleri
    • Kod ve veri çapraz referansları
    • Yeniden isimlendirme ve etiketleme
    • Kod ve veri bölümlerini tekrar tanımlama
    • Sabit sembollerinin kullanımı
    • If koşulları
    • Switch koşulları
    • While döngüleri
    • Repeat / until döngüleri
    • Veri yapılarının tanımlanması
    • Uygulama akışı ve fonksiyon çağrıları
    • Calling convention’ları
    • Önemli Windows API’leri
  • Statik ve dinamik analizin bir arada kullanılması
    • Binary debugging
    • Koşulsuz ve koşullu breakpoint kullanımı
    • Uygulamanın yamalanması
    • Encode edilmiş /  kriptolanmış kodlar
Süre / Yer

Süre: 2 gün

Yer: İstanbull