İşlem Hiyerarşisi ve Önemi
Windows işletim sistemlerinde her yeni başlatılan işlem (child process), başka bir işlem (parent process) tarafından tetiklenir. Örneğin, masaüstü ortamında açılan uygulamalar genellikle explorer.exe
tarafından başlatılır. Bu hiyerarşi, EDR çözümleri ve log analiz platformları tarafından anomali tespiti için kullanılır.
Parent Process PID Spoofing Tekniği
Bu saldırı tekniği, kötü amaçlı bir işlemin güvenilir bir sistem sürecinin altında çalışıyor gibi görünmesini sağlar. Sistem ve analist gözünde güven verici bir parent process ile görünürlük kazanan zararlı yazılım, tespit edilme olasılığını azaltır.
Teknik Adımlar
- STARTUPINFOEX yapısı hazırlanır.
- InitializeProcThreadAttributeList fonksiyonu ile attribute listesi oluşturulur.
- UpdateProcThreadAttribute fonksiyonu ile
PROC_THREAD_ATTRIBUTE_PARENT_PROCESS
parametresi eklenir. - CreateProcess fonksiyonu, manipüle edilmiş yapı ile çağrılır ve child process sahte parent altında başlatılır.
Uygulama Alanları
C++ veya C# gibi sistem seviyesinde çalışan dillerle doğrudan Windows API’sine erişilerek gerçekleştirilebilir. PowerShell üzerinde doğrudan mümkün olmasa da, .NET ve P/Invoke kullanılarak CreateProcess erişimi ile yapılabilir.
Simülasyon ve Örnek Senaryo
Kendi sanal ortamımda (marine.local
) kurduğum Active Directory üzerinde garp kullanıcı hesabı ile testler gerçekleştirildi. dwm.exe
parent olarak seçildi ve cmd.exe
başlatıldı:
ImpersonateFromParentPid -ppid 860 -command "C:\Windows\System32\cmd.exe" -cmdargs ""
Not: dwm.exe
genellikle GUI odaklıdır ve normalde yeni işlemler başlatmaz. Bu nedenle anormal davranış tespitinde dikkat çeker. Standart senaryolarda explorer.exe
, cmd.exe
veya powershell.exe
parent olarak seçilir.
Tespit Yöntemleri
Parent process spoofing’i ortaya çıkarmak için ETW tabanlı izleme araçları etkilidir:
- Sysmon: Event ID 1 ile her process oluşumunu ve parent-child ilişkilerini kaydeder. Anormal ilişkiler, örn.
dwm.exe
altındakicmd.exe
, dikkat çeker. - SilkETW: Gerçek zamanlı event toplama ve süzme imkanı sağlar. Microsoft-Windows-Kernel-Process ve Sysmon provider’ları üzerinden loglar analiz edilerek sahte parent process’ler tespit edilir.
SilkETW.exe -t user -pn Microsoft-Windows-Kernel-Process -ot file -p C:\windows\temp\serkan.json
Özet
Parent Process PID Spoofing, saldırganların güvenlik çözümlerini atlatmak için kullandığı gelişmiş bir tekniktir. İşlem hiyerarşisinin manipüle edilmesi, EDR ve davranış tabanlı sistemler tarafından dikkatlice analiz edilmelidir. Sysmon ve SilkETW gibi araçlar, bu tür anormalliklerin tespitinde kritik öneme sahiptir.