İki yazı olarak planladığım yazı serisinin ilk bölümünde Active Directory (AD) ortamında yer alan istemci veya sunucularda oluşan processlerin takibi için üç konu başlığı altında Group Policy (GP) ayarlarının nasıl yapılacağına değindikten sonra, bir sonraki bölümde Empire, Powersploit türü araçlarla yapılan saldıların oluşturdukları gürültülerin bahse konu ayarlarla nasıl tespit edileceğine değineceğim. Özellikle Powershell saldırı vektörleri ve sonrasında log okuma tarafında çok şey öğrendiğim değerli meslekteşım Ömer Faruk ÇELİK’e de bu vesileyle teşekkür etmek isterim.
Aşağıdaki ayarları öncelikle test ortamınızda denedikten sonra gerçek ortamınızda uygulamanızı şiddetle tavsiye ederim.
1- Command Line Process Auditing
İşletim sistemi ne olursa olsun çalışan processlerin takibi ve tespiti oldukça önemli. Bu noktada kritik öneme sahip olduğunu düşündüğüm Event ID 4688’lerin detaylı (command line’daki parametreler de dahil olmak üzere) takibi için yapılacak GP ayarları aşağıdaki şekilde oluşturulur (1):
- Computer Configuration > Policies > Windows Settings > Security Settings > Advanced Audit Configuration > Detailed Tracking > Audit Process Creation ayarı aşağıdaki gibi yapılır.

- Administrative Templates > System > Audit Process Creation> Include command line in process creation events “Enabled” haline getirilir.

Command Line Process Auditing ayarlarını bitirdikten sonra Sysmon ayarlarına geçelim.
2- Sysmon
Sysmon’un AD ortamında dağıtımı için birden çok yol bulunmakla birlikte, biz zamanlanmış görevlere ekleme yöntemiyle Sysmon’u ortamımızda dağıtmaya çalışalım. Şayet Sysmon’u, tek bir istemcide test etmek isterseniz daha önce oluşturduğum bu scripti kullanarak Sysmon bölümündeki ayarları yapmadan direkt Powershell bölümüne geçebilirsiniz.
- İlgili GPO oluşturduktan sonra yeni bir zamanlanmış görev oluşturulur.

- Sonrasında genel sekmesinde aşağıdaki ayarlar yapılır.

- Trigger sekmesinde yapılması gereken ayarlar aşağıdaki şekildedir:

- Actions sekmesinde iki “Start a program” (Sysmon config dosyası SwiftOnSecurity (3) ayarlarına göre oluşturuldu.) aşağıdaki gibi oluşturulur. İlgili network paylaşım yolunu lab. ayarlarınıza göre değiştirebilirsiniz. Sysmon’u bu bağlantıdan indirebilirsiniz.

- Conditions sekmesinde “Wake the computer to run this task” ibaresinin seçilmesi yeterli.

- Settings ayarları…

3- Powershell Detaylı Logging Ayarları
Aşağıdaki üç GP ayarı ile Powershell kullanılarak yazılan komutlar, kullanılan modüller ve bunların çıktılarının loglanması mümkün. Event ID 4103, 4104, 4105 ve 4106 loglarını yazının ikinci bölümünde daha detaylı irdelemeyi planlıyorum.
Powershell loglama ile ilgili ayarlar aşağıdaki şekilde oluşturulur (Konuyla ilgili daha detaylı bilgi için bu bağlantıyı okumanızı tavsiye ederim.):
- İlgili GPO oluşturulduktan sonra Policies > Administrative Templates > Windows PowerShell yolu takip edilerek önce Turn on Module Logging enabled hale getirilir. Sonrasında Module Names bölümündeki Value kısmına * eklenerek tüm modüllerin loglanması sağlanır. *

- Turn on Powershell Script Block Logging ayarları:

- Son olarak Turn on Powershell Transcription ayarları da aşağıdaki gibi oluşturulur. Output directory’i file share olarak seçmenizde fayda var. Zira her istemci veya sunucudan tek tek transcription loglarını toplamak ve incelemek oldukça zaman alacaktır.

Yukarıda yer alan ayarları yaptıktan sonra lab. ortamına bir de Security Onion (SO) ilave edip, istemci ve sunuculardan elde ettiğimiz Event ve Sysmon loglarını SO’ya Winlogbeat kullanarak gönderme senaryosunu da ele alalım.
- Winlogbeat ilgili istemci veya sunucuya kurulur.
- Sonrasında Winlogbeat’in hangi logları SO’ya göndereceğine dair configuration dosyası oluşturulur ve ProgramData’daki ilgili yere winlogbeat.yml adıyla kopyalanır. Benim kullandığım konfigürasyon dosyasına bu bağlantıdan erişebilirsiniz.

Son bölümdeyse yapılan ayarların loglarını inceleyelim.
1, 2 Command Line Process Auditing ve Sysmon çıktıları:
CMD’yi kullanarak Certutil vasıtasıyla “*mysupermaliciouscode*” içeren komut ve SO çıktısı:

3. Powershell Çıktıları




Faydalı olması dileğiyle…
Kaynaklar:
2- https://zacbergart.blogspot.com/2018/06/sysmon-install-and-config.html
3- https://raw.githubusercontent.com/SwiftOnSecurity/sysmon-config/master/sysmonconfig-export.xml
4- https://www.blackhillsinfosec.com/powershell-logging-blue-team/
“AD Ortamında Sysmon, Command Line Process Auditing, Powershell Logging ile Process Takibi” için 3 yorum