Log zaten var, sorun onu okumak
Bir Active Directory ortamında yaşanan ihlallerin çoğu, sonradan incelendiğinde log'larda açıkça görünür. Saldırganın oluşturduğu hesap, eklediği grup üyeliği, çalıştırdığı şüpheli süreç — hepsi kayıtlıdır. Sorun kaydın eksikliği değil, kimsenin bakmıyor olması ve varsayılan denetim politikasının kritik olayları hiç üretmiyor olmasıdır.
Bu yazıda pratik bir sıra izleyeceğiz: önce doğru denetim politikasını açmak, sonra hangi Event ID'lere bakılacağını bilmek, ardından Sysmon ile görünürlüğü derinleştirmek ve son olarak Sigma kurallarıyla tespiti otomatikleştirmek.
Adım 0: Denetim politikası açık mı?
Varsayılan Windows kurulumunda pek çok kritik olay hiç üretilmez. En önemli iki eksik genellikle şudur:
- Komut satırı denetimi: Açık değilse, 4688 (yeni süreç oluşturuldu) olayı sürecin adını verir ama hangi argümanlarla çalıştırıldığını vermez. Saldırı tespitinde asıl bilgi argümanlardadır.
- PowerShell ScriptBlock logging: Açık değilse, kodlanmış (encoded) PowerShell komutlarının içeriği görünmez.
Denetim politikası auditpol ile ayarlanır. Önemli bir pratik detay: Türkçe Windows kurulumlarında kategori adları yerelleştirildiği için ada göre yazılan betikler çalışmaz. Bu yüzden GUID bazlı ayar yapmak gerekir — kategori adı yerine sabit GUID kullanılmalıdır.
Kritik Event ID'ler ve ne anlama geldikleri
Oturum açma olayları
- 4624 — Başarılı oturum açma. Logon Type alanı kritiktir: Type 3 (ağ), Type 10 (RDP), Type 4 (batch), Type 5 (servis). Beklenmedik bir saatte Type 10 dikkat çeker.
- 4625 — Başarısız oturum açma. Tek başına gürültüdür; kısa sürede çok sayıda 4625 brute force sinyalidir.
- 4740 — Hesap kilitlendi. 4767 — Hesap kilidi açıldı. Bir hesabın tekrar tekrar kilitlenmesi ya yanlış kaydedilmiş bir şifre ya da saldırı göstergesidir.
Hesap ve grup yönetimi
- 4720 — Kullanıcı hesabı oluşturuldu. Saldırganın kalıcılık (persistence) sağlamak için kullandığı klasik adımdır.
- 4722–4726 — Hesap etkinleştirme, şifre değişikliği, devre dışı bırakma, silme.
- 4732 — Güvenlik etkin yerel gruba üye eklendi. 4756 — Evrensel gruba üye eklendi. Bir hesabın Domain Admins'e eklenmesi buradan görünür ve her zaman incelenmelidir.
Süreç ve servis
- 4688 — Yeni süreç oluşturuldu. Komut satırı denetimi açıksa argümanlarla birlikte gelir.
- 4697 ve 7045 — Yeni servis kuruldu. Saldırganların kalıcılık ve yanal hareket için sık kullandığı tekniktir; beklenmedik bir servis kurulumu yüksek öncelikli bir sinyaldir.
Dizin ve politika değişiklikleri
- 5136 — Dizin nesnesi değiştirildi. 5141 — Dizin nesnesi silindi.
- 1102 — Denetim log'u temizlendi. Bu olay neredeyse hiçbir zaman meşru değildir ve tek başına acil inceleme gerektirir.
Kerberos
- 4768 — TGT talep edildi. 4769 — Servis bileti talep edildi. 4771 — Kerberos ön kimlik doğrulaması başarısız.
- Çok sayıda 4769 talebi, özellikle zayıf şifrelemeyle, Kerberoasting girişiminin işaretidir. 4771 yığılması ise şifre püskürtme (password spraying) göstergesi olabilir.
Sysmon: standart log'un göremediği katman
Windows'un yerleşik denetimi çok şey kaydeder ama bazı saldırı tekniklerini hiç görmez. Microsoft Sysinternals'ın Sysmon aracı bu boşluğu doldurur.
Sysmon'un eklediği kritik görünürlük başlıkları:
- Process injection: Bir sürecin başka bir sürecin bellek alanına kod enjekte etmesi.
- Credential dumping / lsass erişimi:
lsass.exesüreç belleğine erişim, kimlik bilgisi çalma girişiminin en net sinyallerinden biridir. - Office makro spawn: Word veya Excel'in alt süreç olarak PowerShell veya cmd başlatması. Meşru senaryosu neredeyse yoktur; phishing zincirinin klasik adımıdır.
- WMI persistence: WMI event abonelikleri üzerinden kalıcılık sağlama.
- Ağ bağlantıları ve DNS sorguları: Hangi sürecin nereye bağlandığı.
Sysmon'un değeri yapılandırmasındadır. Varsayılan boş konfigürasyonla kurulursa ya çok az ya da kullanılamayacak kadar çok log üretir. İyi seçilmiş (curated) bir XML konfigürasyonu, gürültüyü filtreleyip yukarıdaki teknikleri yakalayacak şekilde ayarlanmalıdır.
Sigma: tespit kurallarının ortak dili
Elinizde log var, peki neyi arayacaksınız? Her kurumun sıfırdan tespit kuralı yazması gereksiz bir tekrar. Sigma, tespit kurallarını platformdan bağımsız YAML formatında ifade eden açık bir standarttır.
Bir Sigma kuralı "şu log kaynağında, şu alanlar şu değerleri alırsa bu bir X tekniğidir" der. Aynı kural Splunk sorgusuna, Elastic DSL'e veya başka bir motora çevrilebilir. Topluluk tarafından bakımı yapılan binlerce kural mevcuttur.
Bu kuralları Windows event log'u üzerinde hızlıca çalıştırmak için Hayabusa (Yamato Security) kullanılabilir. Hayabusa, EVTX dosyalarını veya canlı event log'u tarayarak Sigma kurallarını uygular ve bulguları önem derecesiyle raporlar.
MITRE ATT&CK eşlemesi
Sigma kuralları MITRE ATT&CK taktik ve tekniklerine etiketlenir. Bunun pratik faydası, bulguları bir çerçeveye oturtmaktır: "şüpheli PowerShell" yerine "T1059.001 — Command and Scripting Interpreter: PowerShell" dersiniz.
Bu eşleme aynı zamanda kapsama analizini mümkün kılar: hangi ATT&CK tekniklerini tespit edebiliyorsunuz, hangilerinde kör noktanız var? Güvenlik yatırımını bu boşluklara yönlendirmek, rastgele araç eklemekten daha verimlidir.
Anomali tespiti: kural yetmediğinde
İmza ve kural tabanlı tespit bilinen teknikleri yakalar. Bilinmeyenler için davranışsal sinyaller gerekir:
- Mesai dışı oturum: Yalnızca mesai saatlerinde çalışan bir hesabın gece 03:00'te oturum açması.
- Brute force korelasyonu: 4625 ve 4771 olaylarının zaman penceresi içinde birleştirilmesi.
- Hassas grup değişikliği: Domain Admins, Enterprise Admins gibi grupların üyelik değişiklikleri.
- Admin şifre sıfırlama: Ayrıcalıklı bir hesabın şifresinin beklenmedik şekilde sıfırlanması.
- Toplu dosya silme: Kısa sürede çok sayıda dosya/klasör silinmesi — fidye yazılımı veya veri imha girişiminin erken sinyali.
Süreç imza analizi
Etkili ve sık atlanan bir kontrol: çalışan süreçlerin Authenticode imzasının ve SHA-256 özetinin doğrulanması. Bilinen bir sistem ikilisinin (örneğin svchost.exe) imzasının geçersiz olması veya özetinin beklenen değerden farklı olması, ikilinin değiştirildiğini (tampered) gösterir ve yüksek öncelikli bir alarmdır.
Linux tarafını unutmamak
Karma ortamlarda Linux sunucular da izlenmelidir. journald üzerinden anlamlı kategoriler şunlardır: SSH kimlik doğrulama ve oturum açma olayları, geçersiz kullanıcı denemeleri, sudo kullanımı, paket yöneticisi işlemleri (beklenmedik bir paket kurulumu dikkat çeker), systemd unit hataları, OOM killer tetiklenmeleri ve segfault'lar.
Hardening ve geri alınabilirlik
İzleme tespit eder; sıkılaştırma saldırı yüzeyini küçültür. Tipik AD sıkılaştırma adımları: uzun süredir kullanılmayan (stale) hesapların devre dışı bırakılması, "şifre gerekli değil" (PASSWD_NOTREQD) bayrağının kaldırılması, şifre politikasının sıkılaştırılması, AD Recycle Bin'in etkinleştirilmesi, LDAP diagnostic logging ve RDP için NLA zorunluluğu.
Burada kritik ilke şudur: her sıkılaştırma adımı geri alınabilir olmalıdır. Değişiklikten önce mevcut durumun CSV olarak yedeklenmesi ve otomatik bir rollback betiği üretilmesi, sıkılaştırmanın üretimi kesmesi durumunda hızlı dönüş sağlar. Geri dönüş planı olmayan bir sıkılaştırma projesi, ilk sorunda tamamen terk edilir.
Marta Tehdit Bildirim Sistemi (MartaSecurity)
Marta Teknoloji bünyesinde geliştirdiğimiz MartaSecurity, bu yazıdaki adımların tamamını otomatikleştiren çok kiracılı (multi-tenant) bir endpoint güvenlik gözlem platformudur.
Ajan, Windows servisi veya Linux systemd unit olarak çalışır. Denetim politikasını GUID bazlı auditpol ile (Türkçe Windows uyumlu) otomatik kurar, PowerShell ScriptBlock ve komut satırı denetimini açar. Sysmon'u indirip seçilmiş konfigürasyonla besler; Hayabusa'yı kurup 30 dakikada bir canlı event log üzerinde 4000+ Sigma kuralı ve 170 built-in kural çalıştırır, bulguları MITRE ATT&CK taktik/tekniğiyle etiketler.
Yukarıda anlatılan tüm Event ID'leri gerçek zamanlı izler, anomali tespiti yapar, süreç imza analizi ve diff üretir, Linux tarafında journald kategorilerini tarar. Hardening modülü her aksiyon için BEFORE.csv yedeği ve ROLLBACK.ps1 betiği üretir. SMTP üzerinden anlık alarm ve günlük rapor gönderir; merkez sunucu Go + PostgreSQL + Caddy tabanlı panelde tüm ajanların verisini tek ekranda sunar. MSP yapısı sayesinde tek sunucudan birden çok müşteri, izole alarm ve politika görünümüyle yönetilebilir.
Mevcut Active Directory ortamınızın denetim politikası değerlendirmesi ve kör nokta analizi için bizimle iletişime geçebilirsiniz.
