Persistence (Kalıcılık) Mekanizmaları: Sistemde Kalıcı Olma Teknikleri
Zararlı yazılımların sistem yeniden başlatıldıktan sonra bile hayatta kalmasını sağlayan yöntemler.
Bir zararlı yazılımın tek bir çalıştırmadan sonra kaybolması, saldırgan için değerli değildir — bu yüzden neredeyse tüm ciddi tehditler, sistem yeniden başlatıldığında (reboot) veya kullanıcı oturum açtığında otomatik olarak tekrar çalışmasını sağlayan bir "persistence" (kalıcılık) mekanizması kurar. Bu makale, MITRE ATT&CK çerçevesinin "Persistence" taktiğinde kategorize edilen en yaygın tekniklere odaklanır.
Registry Run Anahtarları: En Klasik Yöntem
En basit ve en yaygın kullanılan persistence tekniği, Windows Registry'deki "Run" anahtarlarına bir giriş eklemektir:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
Bu anahtarlardaki her değer, kullanıcı oturum açtığında (HKCU) veya sistem başladığında (HKLM) otomatik olarak çalıştırılır. Basitliği nedeniyle hem çok yaygın kullanılır hem de güvenlik araçları tarafından ilk bakılan yerlerden biridir — bu yüzden gelişmiş tehditler genelde daha gizli yöntemleri tercih eder.
Zamanlanmış Görevler (Scheduled Tasks)
Windows Task Scheduler üzerinden oluşturulan bir görev, belirli bir zamanlamayla (örneğin her gün, sistem açılışında, belirli bir olay tetiklendiğinde) bir programı çalıştırabilir:
schtasks /create /tn "WindowsUpdateCheck" /tr "C:\Users\Public\update.exe" /sc onlogon
Saldırganlar genelde görev adını meşru bir Windows bileşenine benzeterek ("WindowsUpdateCheck" gibi) bir güvenlik analistinin ilk bakışta şüphelenmemesini hedefler — bu, sosyal mühendisliğin sistem yönetimi seviyesindeki bir yansımasıdır.
Servisler (Windows Services) Üzerinden Kalıcılık
Bir zararlı yazılım, kendini bir Windows servisi olarak kaydedebilir — servisler genelde SYSTEM ayrıcalıklarıyla, kullanıcı oturumu açık olmasa bile arka planda çalışır, bu da onları normal bir "Run" anahtarı girişinden daha güçlü ve daha az fark edilir kılar.
DLL Hijacking / Search Order Hijacking
Bu daha sofistike bir teknik: Windows, bir programın ihtiyaç duyduğu DLL'leri belirli bir sırayla (önce programın kendi dizini, sonra sistem dizinleri gibi) arar. Bir saldırgan, meşru bir programın kendi dizinine, sistemdeki gerçek bir DLL ile AYNI İSİMDE ama zararlı kod içeren sahte bir DLL yerleştirirse, program çalıştığında (arama sırası nedeniyle) gerçek DLL yerine sahte olanı yükleyebilir. Bu teknik özellikle güçlüdür çünkü meşru, imzalı bir uygulamanın kendisi "temiz" görünürken, aslında arka planda zararlı kodu tetikleyen bir araca dönüşür.
WMI Event Subscription: Dosyasız Kalıcılık
Daha gelişmiş bir teknik, Windows Management Instrumentation (WMI) olay aboneliklerini kullanmaktır. Bir saldırgan, belirli bir olay (örneğin sistem her başladığında) tetiklendiğinde otomatik olarak bir komut çalıştıran bir WMI aboneliği kaydedebilir — bu abonelik disk üzerinde geleneksel bir dosya olarak görünmediği için (WMI deposunun kendi iç veritabanında saklanır), dosya tabanlı taramalarla tespit edilmesi çok daha zordur.
Pratik Senaryo
Bir olay müdahale ekibi, temizlediğini düşündüğü bir sistemde zararlı yazılımın birkaç gün sonra tekrar ortaya çıktığını fark ediyor. İlk incelemede Registry Run anahtarları ve Scheduled Tasks temiz görünüyor. Ekip, WMI aboneliklerini Get-WmiObject -Namespace root\subscription -Class __EventFilter gibi bir sorguyla kontrol ettiğinde, meşru bir sistem olayına bağlanmış, şüpheli bir PowerShell komutu çalıştıran gizli bir abonelik buluyor. Bu, ilk temizleme sırasında sadece görünür/bilinen persistence noktalarına bakılıp, daha az bilinen WMI mekanizmasının atlanmış olmasından kaynaklanıyordu — bu, bir olay müdahalesinde MITRE ATT&CK'teki TÜM bilinen persistence tekniklerinin sistematik olarak kontrol edilmesi gerektiğinin önemli bir dersidir.
Bu makale, persistence mekanizmalarının orta-ileri seviye teknik bir özetidir; SiberCrew ekibi tarafından hazırlanmış özgün içeriktir.