Zararlı Yazılım Analizi

Zararlı Yazılım Analizi

Kötü Amaçlı Yazılımlara Hazırlanın

Malware Analysis Professional (MAP), öğrencilere mekaniklerini ve amaçlarını anlamak için kötü amaçlı yazılımları incelemek için gerekli bilgi ve becerileri öğreten çevrimiçi, kendi hızınızda bir eğitim kursudur. MAP, kötü amaçlı yazılımları incelemek için bütüncül bir yaklaşım sağlar. Ayrıca Tersine Mühendislik hakkında daha fazla bilgi edinecek ve becerilerinize ek bir beceri ekleyecek, bir ürünü planını veya nasıl yapıldığını anlamak için incelemenize izin vereceksiniz.

 

Yaparak öğrenin

MAP, 36 laboratuvar ile birlikte gelen kendi kendine ilerleyen bir derstir, böylece bilginizi geliştirebilir ve kötü amaçlı yazılımların uygulamalı diseksiyonu ve analizi yoluyla becerilerinizi test edebilirsiniz. MAP’ın Tersine Mühendislik bölümünde, pratik tersine mühendislik deneyimi sağlayan 10 indirilebilir, çevrimdışı laboratuvar (yürütülebilir) vardır. Ayrıca, bu içerik, her tekniğin ayrıntılı bir açıklamasını sağlayan adım adım yönergeler sağlayan videolarla birlikte gelir.

 

Bir bakışta kurs

  • Sizi gerçek dünyadaki örneklere hazırlamak için oluşturulmuş gerçekçi kötü amaçlı yazılım örnekleri
  • Gerçek dünyadaki örnekleri analiz edin: Fidye yazılımları, Botnet’ler, RAT’lar vb…
  • IA-32 CPU Mimarisi hakkında bilgi edinin
  • Tüm modül x64 bit assembly’e ayrılmıştır
  • TLS yöntemine pratik gösterim ve derinlemesine bakış
  • Kötü amaçlı yazılımların kötü amaçlı etkinliklerini gerçekleştirmek için Windows API’larını nasıl kullandığını anlama
  • Anti-Reversing tekniklerini anlama ve atlama
  • Packed çalıştırılabilir dosyalarda tam manuel unpacked işlemini gerçekleştirin
  • Farklı debuggers’ları kullanarak örneklerde debug işlemi yapma
  • Önemli algoritmaları bulmak için farklı yöntemler öğrenin

Ders materyali

  • 8 saatten fazla HQ video eğitim materyali
  • 21 modülde 1800’den fazla etkileşimli slayt
  • 800’den fazla slayttan oluşan laboratuvar kılavuzları ile 36 uygulamalı Kötü Amaçlı Yazılım Analizi ve tersine mühendislik laboratuvarları.

 

Kurs teslimi

  • Kendi hızınızda / HTML5, PDF, MP4
  • Çevrimdışı erişim mevcut
  • PC, Tablet ve Akıllı Telefondan Erişim

 

Müfredat

Bölüm: KÖTÜ AMAÇLI YAZILIM ANALİZİ

Modül 1: Kötü Amaçlı Yazılım Analizine Giriş

Modül 01, Kötü Amaçlı Yazılımlara, farklı Kötü Amaçlı Yazılım türlerine, ne olduklarına ve nasıl analiz edileceğine temel bir giriş niteliğindedir. Bu modül ayrıca kötü amaçlı yazılımı analiz etmek için kullanılan kötü amaçlı yazılım analiz tekniklerini ve neden farklı yöntem ve tekniklere ihtiyacımız olduğunu da kapsar. Son olarak, modül ayrıca kötü amaçlı yazılım da dahil olmak üzere kanıt elde etmek için kullanılabilecek araçların çoğunu kapsar.

Modül 2: Statik Analiz Teknikleri

Bu modül, kötü amaçlı yazılımı tanımlamak ve bir ilk değerlendirme yapmak için kullanılan temel statik yöntemleri sunar. Modül, farklı dosya türlerini, farklı hash türlerini ve bunların nasıl yardımcı olabileceğini, dizeleri ayıklama ve bunları analizinizde başlangıç noktaları olarak kullanma ve çevrimiçi tarayıcı veya  sandbox kullanmayı ne zaman ve neden düşünebileceğinizi kapsar. Modül ayrıca Portable Executable (PE) dosya biçimine ve yapısının nasıl analiz edileceğine ve içindeki tüm ana değerlerin nasıl anlaşıldığına derinlemesine bakar. Son olarak, bu modül, tüm bu bilgilerin bir indicator of compromise(IOC)  oluşturmak için nasıl kullanılacağını ve YARA kullanan diğer sistemlerde kötü amaçlı yazılım örnekleri bulmak için nasıl kullanılacağını açıklar.

Modül 3 : Assembly Crash Kursu

Günümüzde kullanılan sistemlerin çoğu 64 bit olduğundan, bu modül x64 derleme dilinin çökme kursu olarak kabul edilir. X64’ün x86’dan farkı nedir, kötü amaçlı yazılım analistlerinin neden 64 bit kodu analiz etme ve hatta bazı x64 Assembly kodlarını yazma konusunda yetenekli olmaları bu modülde ele alınacaktır.

Modül 4: Davranış Analizi

Windows işlemlerini, iş parçacıklarını ve bir işlem için kullanılabilen farklı nesneleri açıklayarak başlar. Kötü amaçlı yazılımın davranışını ve kurbanın sistemini nasıl etkilediğini anlamak için burada çalıştırılır. Modül, kötü amaçlı yazılım tarafından kullanılan farklı enjeksiyon yöntemlerini ve sistemlerde nasıl kalıcı olduklarını gösterir, böylece geri dönebilir veya kurbanın sisteminde veya ağında bir kalıcılık oluşturabilirler. Modül ayrıca, EXE veya DLL olsun, kötü amaçlı yazılımları analiz etmek için kullanılacak farklı araçları ve bunların nasıl etkin bir şekilde kullanılacağını da kapsar. Son olarak, modül ayrıca dinamik analizinizi otomatikleştirmek ve daha fazla araştırmanıza yardımcı olabilecek daha hızlı sonuçlar almak için bir sandbox’ın nasıl kullanılacağını açıklar.

Modül 5: Debugging ve Disassembly Teknikleri

Bu modül, en gelişmiş kötü amaçlı yazılım analizi yöntemlerinden ikisini kapsar: debugging ve disassembling. Bu yöntemlere neden ihtiyaç duyulur ve bunların ne zaman kullanılacağı, artıları ve eksileri ve hangi araçların mevcut olduğu, hepsi bu modülde ele alınan temel kavramlardır. Farklı debugging yöntemleri, breakpoint’ler ve kontroller ve bir kötü amaçlı yazılım örneğini çalıştırmak ve analiz etmek için nasıl kullanılacağı ele alınacaktır. Son olarak, bu modül, Windows API düzeyinde yaygın kötü amaçlı yazılım özelliklerini tanımaya odaklanarak, disassembling ve tersine mühendislik işlemlerini daha ayrıntılı olarak kapsar.

 

Modül 6: Obfuscation Teknikleri

Kötü amaçlı yazılım geliştiricilerinin ulaşmaya çalıştığı hedeflerden biri, kötü amaçlı yazılım kodlarını analiz etmeyi engellemektir. Bu nedenle, bunu başarmak için birçok farklı yöntem ve teknik kullanacaklardır. Bu modül, kod çözme (Base64, XOR, vb.) Gibi kötü amaçlı yazılım geliştiricileri tarafından anti-debugging ve tersine mühendislik uygulamalarını kullanarak en yaygın Obfuscation tekniklerini kapsar. Bu modül, paketlemenin ayrıntılı olarak ne olduğunu ve farklı kötü amaçlı yazılım örneklerini açmak için farklı paketleme tekniklerinin nasıl uygulanacağını ele alır. Son olarak, modül Shell code  (temel olarak 64 bit Shell code) ve nasıl bulunacağını, debugging ve analiz edileceğini kapsar.

 

Bölüm: TERSİNE MÜHENDİSLİK

Modül 1: Gerekli Teori – Bölüm 1

İlk üç modül, gerekli tüm teoriyi ve bu dersin pratik kısmının dayandığı kavramları kapsamayı amaçlamaktadır. Tersine Mühendislik’in ne olduğu ve birisinin buna neden ihtiyaç duyabileceğine dair kısa bir açıklama ile başlayacağız ve daha fazla teknik kavramla devam edeceğiz. İlk üç bölüm boyunca Intel IA-32 CPU mimarisinin (x86), stack, heap ve istisnaların, bazı Windows Internal’lara sahip Windows API’larının ve bunların kullanıldığı en yaygın tersine çevirme araçlarının arkasındaki temelleri tartışacağız.

Modül 2: Gerekli Teori – Bölüm 2

İşte burada, bu ders için gerekli teorik bilgiye adanmış ikinci modüldeyiz. Akılda tutulması gereken bir şey, ‘teorik’ ifadesinin aslında buna ihtiyaç duyabileceğiniz anlamına gelmediği anlamına gelmez…. Aslında, bu ilk üç modülde tartışılan teori, sadece bu kurs ve teknik görevleri için değil, geri dönüşüm olarak kalan zamanınız için ihtiyaç duyacağınız tüm temel bilgileri ve kavramları kapsar.

 

Modül 3: Gerekli Teori – Bölüm 3

Bu dersin üçüncü modülü, dersin geri kalanı için gerekli bazı ekstra teorik bilgileri sunmayı amaçlamaktadır. Bu modül sırasında stack konusuna kısaca değineceğiz, handle, istisnaları, bazı temel Windows Ring3 Dahili yapılarını ve Windows API’lerini tartışacağız. Son olarak, yazılım tersine mühendislik için günümüzde kullanılan en yaygın tersine çevirme araçlarından geçeceğiz.

 

Modül 4: VA / RVA / OFFSET ve PE Dosya Formatı

Bu modülde, sanal adresleri, göreli sanal adresleri, ofsetleri ve tüm Windows yürütülebilir dosyalarının temel yapısını tanımlayan Taşınabilir Yürütülebilir Dosya Biçimi ile ilgili bazı temel bilgilere bakacağız

 

Modül 5: String Referansları ve Temel Patching

Bu modül ‘Dize Referansları’nın yanı sıra Temel Bellek ve Dosya Yama’ya ayrılmıştır. İlgilendiğimiz algoritmayı bulmak için veri dizelerinin kullanımını gösteririz ve ardından mantığını tersine çeviririz. Son olarak, bellekteki sanal adresini bilerek fiziksel dosyanın içindeki bir baytın ofsetini nasıl hesaplayabileceğimizi açıklıyoruz.

 

Modül 6: Stack Keşfi

Bu modül, bir algoritmayı izlemek için stack üzerinden alabileceğimiz verileri keşfetmeye odaklanır. Anında şifreleme ve verilerin şifresini çözmemiz gerektiğinde çok önemli bir teknik.

 

Modül 7: Algoritma Reversing

Modül 8 : Windows Kayıt Defteri Manipülasyonu

Modül 9 : Dosya Manipülasyonu

Modül 10 : Anti-Reversing hileleri – Part 1

Modül 11 : Anti-Reversing hileleri – Part 2

Modül 12 : Anti-Reversing hileleri – Part 3

Modül 13 : Code Obfuscation

Modül 14 : Paket Analizleri ve Manuel Paket Açma

Modül 15 : Multi-Thread Uygulamalarda Hata Ayıklama