Merhaba
Bir Active Directory ortamını hiçbir şeyi değiştirmeden tarayan ve size ortamın fotoğrafını tek parça, çevrimdışı bir HTML raporu olarak veren 6 PowerShell modülü. Bu yazıda ne yaptıklarını, nasıl çalıştırıldıklarını ve ürettikleri raporların KVKK, ISO 27001 ve CIS açısından ne anlama geldiğini anlatıyorum.
Her Active Directory ortamı zamanla birikir. Yıllar içinde açılıp unutulan servis hesapları, kimsenin dokunmaya cesaret edemediği eski GPO’lar, hala ayakta duran bir Windows Server 2012 domain controller, geçici diye kurulmuş ama kalıcılaşmış bir trust ilişkisi… Bunların hiçbiri tek başına alarm vermez. Ama bir araya geldiklerinde denetim zamanı geldiğinde ya da bir güvenlik olayının ortasında ortamın gerçekte neye benzediğini kimsenin net bilmediği ortaya çıkar.
Bu yüzden Active Directory Audit Suite‘i yazdım: Active Directory ortamını hiçbir şeyi değiştirmeden, salt okunur biçimde tarayan ve size ortamın fotoğrafını tek parça, çevrimdışı bir HTML raporu olarak veren bir PowerShell modülleri koleksiyonu. Ne ajan kurulumu, ne bulut, ne telemetri scripti çalıştırıyorsunuz, tarayıcıda açılan raporu okuyorsunuz.
Neden bir araç daha?
Piyasada Active Directory denetim araçları var; birçoğu ya ücretli, ya ajan kuruyor, ya da veriyi bir yere gönderiyor. Benim ihtiyacım daha sadeydi:
- Salt okunur olmalı. Denetim aracı ortamı değiştirmemeli. Bu suite’teki her sorgu yalnızca okur.
- Çevrimdışı ve taşınabilir olmalı. Rapor tek bir HTML dosyası olmalı; internet olmadan açılmalı, e-postayla gönderilebilmeli, denetçiye teslim edilebilmeli.
- Kurulum istememeli. RSAT dışında bağımlılık yok; kopyala, çalıştır.
- Anlaşılır olmalı. Çıktı ham CSV değil; KPI’lar, grafikler ve drill-down’lar içeren okunabilir bir dashboard.
Altı modül, altı bakış açısı
Suite bağımsız çalışan altı modülden oluşuyor. Hepsini çalıştırmak zorunda değilsiniz; her biri kendi başına anlamlı bir rapor üretir.
1. AD-Overview – Kuşbakışı
Forest’ın üst düzey özeti: fonksiyonel seviyeler, şema sürümü, FSMO rol sahipleri, tombstone lifetime; kullanıcı / bilgisayar / grup / OU / GPO sayıları; hesap durumu (etkin, devre dışı, eski, kilitli, parolası hiç dolmayan) ve OS dağılımı. Ortama ilk kez bakıyorsanız buradan başlayın.
Çalıştırmak için: Windows PowerShell‘i Run as administrator (Yönetici olarak) açın ve scriptlerin bulunduğu klasöre geçip komutu çalıştırın:
cd C:\Scripts
powershell -ExecutionPolicy Bypass -File .\AD-Overview.ps1

AD-Overview.ps1 çalışırken: Forest bilgileri ve Domain başına nesne sayıları toplanıyor.

Rapor, forest’ın tek ekranda fotoğrafını veriyor: bakicubuk.local, Windows Server 2025 fonksiyonel seviyesi, tek domain, tek site, iki Global Catalog ve FSMO rollerinin tamamı W25DC üzerinde. Nesne envanteri 25 kullanıcı, 71 grup, 3 bilgisayar, 3 OU ve 2 GPO gösteriyor. Asıl dikkat çeken hesap durumu: 25 hesabın 12’si devre dışı, 13’ünde parola hiç dolmuyor ve 9 hesap hiç oturum açmamış. Bu üç sayı, denetimde ilk elden ele alınması gereken ölü ve zayıf kimlik tablosudur.

2. AD-Topology – Harita
Forest → domain → site → domain controller hiyerarşisini interaktif bir harita olarak çizer. FSMO rolleri, subnetler, site-link’ler ve replikasyon sağlığı burada. Her Domain Controller sağlığına göre renklenir; replikasyonu gecikmiş ya da bozulmuş bir DC anında göze çarpar ki bu, Active Directory‘de görebileceğiniz en kritik sorunlardan biridir.
Çalıştırmak için: Windows PowerShell‘i Run as administrator (Yönetici olarak) açın ve scriptlerin bulunduğu klasöre geçip komutu çalıştırın:
cd C:\Scripts
powershell -ExecutionPolicy Bypass -File .\AD-Topology.ps1

AD-Topology.ps1: topoloji ve replikasyon sağlık matrisi kuruluyor.
Script çalışırken her aşamayı ekranda canlı görürsünüz: topoloji verisi çekilir, orphaned DC metadata kontrol edilir ve replikasyon sağlık matrisi kurulur. Bu matris, DC’ler arası ortaklıkların (partnership) ve dizin bölümlerinin (partition) güncel olup olmadığını değerlendirir; gecikmiş ya da bozuk bir replikasyon burada işaretlenir. AD’de en kritik takip edilmesi gereken sağlık göstergesidir.

Harita, Forest → Domain → Site → DC hiyerarşisini iç içe kartlarla gösteriyor. İki domain controller (W25DC, W25ADC) tek sitede; FSMO rollerinin tamamı (PDC, RID, INFRA, SCHEMA, DN) tek DC olan W25DC’de toplanmış o sunucu düştüğünde birden çok kritik rol aynı anda kaybolur, yedeklilik açısından gözden geçirilmelidir. Terminal çıktısındaki 1 stale/lingering finding bilgisi de replikasyon hijyeni için not düşülmesi gereken bir bulgudur.

Bu matris, replikasyonun kalbini tek tabloda gösteriyor: her hücre yönlü bir replikasyon partnerliğidir (satır = kaynak DC → sütun = hedef DC) ve veriler AD’nin kendi metadata’sından okunur, ağ taraması yapılmaz. Ortamda 2 domain controller, 2 partnerlik ve her ikisi de SAĞLIKLI; gecikmiş ya da başarısız replikasyon yok yeşil onaylar bunu doğruluyor. Her hücre naming context’lerin (domain, Configuration, Schema, DNS) en kötüsünü gösterdiği için, tek bir yeşil bile tüm bölümler güncel demektir. Alttaki Eski/Kalıntı (Lingering) Nesneler taraması ise bir DÜŞÜK bulgu döndürmüş: Default-First-Site-Name sitesinin ilişkili subnet’i yok, bu da istemcilerin siteye doğru eşlenememesine yol açabilir; önerilen düzeltme, siteye doğru IP subnet’lerini tanımlamaktır.

3. AD-DCInventory – Envanter
Her domain controller’ın envanteri: OS ve build, IP, site, Global Catalog / RODC durumu, uptime; ardından CIM/WMI ile donanım (üretici, model, CPU, RAM, diskler, NIC’ler) ve performans (CPU/RAM kullanımı, NTDS.dit boyutu). Bir DC’ye erişilemezse ilgili alanlar hata yerine Unavailable gösterilir.
Çalıştırmak için: Windows PowerShell‘i Run as administrator (Yönetici olarak) açın ve scriptlerin bulunduğu klasöre geçip komutu çalıştırın:
cd C:\Scripts
powershell -ExecutionPolicy Bypass -File .\AD-DCInventory.ps1

AD-DCInventory.ps1: DC’ler keşfediliyor, donanım ve performans toplanıyor.

Envanter, iki domain controller’ı da çevrimiçi, Windows Server 2025 Datacenter (build 26100), 16 GB RAM ile listeliyor; RODC yok ve Legacy OS sayacı sıfır desteği bitmiş bir OS üzerinde çalışan DC yok. Genişletilebilir kartlar her DC için donanım ve anlık performansı (CPU %15 / %1, çekirdek, disk) veriyor. Bu ekran, hangi kimlik sunucularım var ve ne durumdalar sorusunun belgelenmiş cevabıdır.

4. AD-Credential – Kimlik güvenliği
Suite’in en yoğun güvenlik modülü. Parola/lockout politikasını bir baseline’a göre puanlar; PSO’ları, gMSA/sMSA managed account’ları ve LAPS kapsamını listeler; riskli hesapları işaretler: parolası hiç dolmayanlar, unconstrained delegation, SID history, eski servis parolaları, SPN’ler ve krbtgt parola yaşı. Her kategori CSV olarak indirilebilir.
Çalıştırmak için: Windows PowerShell‘i Run as administrator (Yönetici olarak) açın ve scriptlerin bulunduğu klasöre geçip komutu çalıştırın:
cd C:\Scripts
powershell -ExecutionPolicy Bypass -File .\AD-Credential.ps1

AD-Credential.ps1: 8 aşamada Parola Politikası, PSO, Managed Account, LAPS ve Hesap Riskleri taranıyor.

Bu modül işini sekiz aşamada yapar ve her adımı canlı raporlar: parola & kilitleme politikası, fine-grained password policy’ler (PSO), managed account’lar, LAPS kapsamı ve yetkilendirme, kullanıcı ve bilgisayar hesabı riskleri, foreign security principal’lar ve sahipsiz SID taraması. Ürettiği rapor Hesap ve Kimlik Bilgisi Güvenliği başlığıyla açılır ve suite’in en yoğun güvenlik çıktısıdır.
İçgörü paneli kimlik hijyenini tek bakışta özetliyor: 2 politika sorunu, 1 servis (SPN) hesabı, 0 gMSA ve LAPS kapsamı yok. Risk bayrakları çubuğunda en dikkat çekici satır, parolası hiç dolmayan 14 hesap ile parola gerektirmeyen 2 hesap. Parola/kilitleme politikası bir baseline’a göre puanlanıyor ve Minimum password length = 7 ayarı, önerilen ≥14 eşiğinin altında kaldığı için BAŞARISIZ işaretlenmiş teoride değil, ortamın gerçek ayarında ölçülen somut bir zayıflık.

Domain’in varsayılan parola ve kilitleme politikası, yaygın bir sertleştirme baseline’ına (NIST/CIS uyumlu) göre satır satır puanlanıyor. İyi olanlar Geçti ile işaretli: parola geçmişi 24, karmaşıklık açık, reversible encryption kapalı, maksimum parola yaşı 42 gün. Ancak iki ayar baseline’ı karşılamıyor: Minimum parola uzunluğu 7 (beklenen ≥14) ve hesap kilitleme eşiği 0 (yani kilitleme yok) ikisi de Başarısız. Kilitleme süresi ve gözlem penceresi ise eşik 0 olduğu için etkisiz kaldığından gösteriliyor. Kısa parola brute-force/spraying’e, kilitlemenin olmaması ise sınırsız çevrimiçi parola denemesine kapı açar. Tanımlı bir fine-grained password policy (PSO) de yok; yani bu zayıf ayarlar tüm domain için geçerli.

Bu ekran kullanıcı hesaplarını risk kategorilerine ayırıp YÜKSEK ORTA DÜŞÜK önemle etiketliyor: parola gerektirmeyen 2 hesap (YÜKSEK), 14 süresiz-parola hesabı (ORTA), 1 SPN taşıyan servis hesabı ve adminCount işaretli 3 ayrıcalıklı hesap. Üstteki kutu SPN’li hesapların Kerberoasting’e açık olduğunu açıklıyor: saldırgan servis biletini isteyip çevrimdışı kırabilir; uzun/karmaşık parola, AES ve mümkünse gMSA önerilir. Her kategori Aç ve CSV ile drill-down ve dışa aktarım sunar bulgu kanıt olarak denetçiye teslim edilebilir.

Bilgisayar tarafında 3 nesne taranmış: desteği biten OS yok, eski makine parolası yok, ancak 2 nesnede unconstrained delegation YÜKSEK riskle işaretlenmiş. DC olmayan bir nesnede bu ayar, herhangi bir kullanıcının TGT’sini yakalayıp yeniden kullanmaya kapı bırakır ve doğrulanmalıdır. Foreign Security Principal taraması temiz; sahipsiz SID bölümünde 306 nesne taranmış, 0 sahipsiz SID bulunmuş. Bu modül yalnızca tespit eder, hiçbir şeyi değiştirmez.

5. AD-TrustRelationships – Güven ilişkileri
Her trust’ı keşfeder: yön, tip, transitivity ve güvenlik durumu SID filtering, selective authentication, TGT delegation, AES/SHA. Riskleri hardcode etmez, türetir: bir external trust’ta SID filtering kapalıysa bunu yüksek risk olarak işaretler, çünkü bu SID history ile ayrıcalık yükseltmeye kapı açar.
Çalıştırmak için: Windows PowerShell‘i Run as administrator (Yönetici olarak) açın ve scriptlerin bulunduğu klasöre geçip komutu çalıştırın:
cd C:\Scripts
powershell -ExecutionPolicy Bypass -File .\AD-TrustRelationships.ps1

AD-TrustRelationships.ps1: Trust’lar keşfediliyor ve güvenlik açısından değerlendiriliyor.

Bu ortamda dış trust bulunmuyor; harita yalnızca bakicubuk.local’i bu forest / bu domain olarak gösteriyor ve risk paneli 0 trust raporluyor. Trust olmaması aslında iyi bir güvenlik tablosudur her external/forest trust, özellikle SID filtering kapalıysa, ayrıcalık yükseltme için ek bir yol demektir. İleride bir trust kurulduğunda rapor, SID filtering ve selective authentication durumunu otomatik değerlendirip riskli olanları işaretleyecektir.

6. GPO-PolicyAnalyzer – Politika karşılaştırıcı
Microsoft’un Policy Analyzer’ıyla elle yapılan işi otomatikleştirir: her GPO’yu yedekler, ham Registry.pol ve GptTmpl.inf dosyalarını ADMX/ADML ile anlaşılır politika isimlerine çözer ve tüm GPO’ları tek bir tabloda karşılaştırıp çakışan (conflict) ayarları işaretler. GPO’larınızın çeliştiği, sonucun önceliğe bağlı sürprizlere döndüğü yerleri görürsünüz.
Çalıştırmak için: Windows PowerShell‘i Run as administrator (Yönetici olarak) açın ve scriptlerin bulunduğu klasöre geçip komutu çalıştırın:
cd C:\Scripts
powershell -ExecutionPolicy Bypass -File .\GPO-PolicyAnalyzer.ps1

GPO-PolicyAnalyzer.ps1: GPO’lar yedekleniyor, ADMX/ADML ile çözülüyor ve baseline’a göre puanlanıyor.

Dashboard iki GPO’yu (Default Domain Policy ve Default Domain Controllers Policy) ve toplam 48 ayarı analiz ediyor; boş, bağlanmamış, gereksiz ya da çakışan GPO yok çakışma oranı %0. Kategoriye göre dağılım Registry 4, Security 5, User 24, Parola/Kilitleme 10 ve Kerberos 5 ayar. Alttaki GPO Bütünlüğü kontrolleri her GPO’nun etkin, AD/SYSVOL sürümlerinin tutarlı ve doğru bağlanmış olduğunu doğruluyor politika altyapısının kendisi sağlıklı.

Raporun en kritik bölümü bu: Starter Hardening Baseline uyumluluğu yalnızca %35 20 kontrolün 7’si Compliant, 2’si Yanlış Değer, 11’i Eksik. Somut açıklar: minimum parola uzunluğu 7 (beklenen ≥14), hesap kilitleme eşiği 0 (kilitleme yok), LAN Manager kimlik doğrulama seviyesi eksik, anonim enumerasyon kısıtlaması eksik, UAC/Admin Approval Mode eksik, WDigest ve LSASS RunAsPPL sertleştirmesi eksik, SMBv1 ve LLMNR devre dışı bırakılmamış. Her biri bilinen, istismar edilebilir zayıflıktır; %35, ortamın sertleştirmede nerede durduğunu tek rakamla ortaya koyar.


Bu tablo, Microsoft Policy Analyzer’ın yaptığı işi yapıyor: tüm GPO’lardaki yapılandırılmış değerleri tek grid’de karşılaştırıp çakışmaları işaretliyor. Sonuç temiz 0 gerçek çakışma, 0 redundant, 0 additive; ayarlar kategoriye göre filtrelenebiliyor (Registry 4, Security Options 5, User Rights 24, Parola/Kilitleme 10, Kerberos 5). Örnek satırlarda Access this computer from the network, Allow log on locally gibi kullanıcı hakları ve bu hakların hangi grupların üzerinde olduğu (RULES sütunu) görülüyor. Üstteki uyarı önemli: bu ekran effective/resultant policy değildir. OU scope, block inheritance, security filtering ve WMI filtreleri hesaba katılmaz; yani işaretlenen bir çakışma belirli bir makinede gerçekte çakışmayabilir. Gerçek sonucu görmek için ilgili ayarın Precedence, enforcement & linking detayına bakılır.

C:\Scripts dizini altında, çalıştırdığınız her modül kendi raporunu tarih-saat damgalı birer HTML dosyası olarak oluşturur (Ör. AD_Overview_20260821_115623.html). Böylece aynı modülü farklı zamanlarda çalıştırıp raporları karşılaştırabilir, denetim izini tarih tarih arşivleyebilirsiniz. Bunlara ek olarak GPO-PolicyAnalyzer, GPOBackups adında bir klasör oluşturur; bu klasör her GPO’nun ham yedeğini (Registry.pol, GptTmpl.inf) tutar ve -SkipExport ile yeniden analizi anında yapmanızı sağlar. Raporlar tamamen çevrimdışıdır ve yalnızca bu klasöre yazılır.

Nasıl çalıştırılır
Önkoşullar
Domain’e katılı bir Windows makinesi, PowerShell 5.1+ ve RSAT ActiveDirectory modülü yeterli. GPO modülü için ek olarak RSAT GroupPolicy (GPMC) gerekir. Active Directory‘ye okuma yetkisi olan bir domain hesabı çoğu rapor için yeterlidir; DC donanım/performans ve bazı güvenlik alanları için Domain Admin daha eksiksiz sonuç verir.
-
- Domain’e katılmış bir Windows makinesi
- PowerShell 5.1 veya üzeri
- RSAT ActiveDirectory modülü (tüm modüller için)
- RSAT GroupPolicy (GPMC) modülü (yalnızca GPO-PolicyAnalyzer için)
- Active Directory‘ üzerinde okuma yetkisi olan bir hesap
- Şu iki durumda **Run as administrator (Yönetici olarak) olarak açılmış Windows PowerShell **:
- Raporlar için
C:\köküne veya Program Files gibi korumalı bir konuma klasör oluşturacaksan. Yetki yoksa scriptOutput folder could not be created: C:\ADReportsuyarısını verip durur ve rapor üretmez. Bu durumda ya PowerShell’i yönetici olarak aç, ya da yazma yetkin olan bir yol ver:-OutputPath "$env:USERPROFILE\Documents\ADReports". AD-DCInventory‘yi donanım toplamayla çalıştıracaksan. Uzak domain controller’lardan CIM/WMI ile donanım ve performans bilgisi almak yükseltilmiş yetki ister; yetki yoksa modül çalışır ama donanım kolonları boş gelir. Donanım bilgisine ihtiyacın yoksa-SkipHardwareile atlayabilirsin.
- Raporlar için
RSAT modülleri kurulu değilse (yönetici PowerShell’de):
RSAT’ı kurmak için (Windows 10/11, yönetici PowerShell):
Add-WindowsCapability -Online -Name Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0
Add-WindowsCapability -Online -Name Rsat.GroupPolicy.Management.Tools~~~~0.0.1.0
İndirme
Git yüklüyse:
git clone https://github.com/bakicubuk/Active-Directory-Audit-Suite.git
cd Active-Directory-Audit-Suite
Git yoksa, GitHub’daki yeşil Code → Download ZIP ile indirin, ZIP’e sağ tıklayıp Properties → Unblock işaretini koyun (internetten inen dosyalar bloklu gelir), ardından Extract All ile açın.
Çalıştırma
Her modül tek satırla çalışır:
powershell -ExecutionPolicy Bypass -File .\Scripts\AD-Overview.ps1
Tüm raporları tek bir klasöre toplamak isterseniz -OutputPath verin:
.\Scripts\AD-Overview.ps1 -OutputPath C:\ADReports
.\Scripts\AD-Credential.ps1 -OutputPath C:\ADReports
.\Scripts\GPO-PolicyAnalyzer.ps1 -OutputPath C:\ADReports
Script biter bitmez rapor tarayıcıda açılır. Otomatik açılmasını istemezseniz -OpenReport:$false ekleyin.
C:\ köküne yazmak yönetici yetkisi ister. Yetki yoksa script Output folder could not be created: C:\ADReports uyarısını verip rapor üretmeden durur. Alternatif: -OutputPath "$env:USERPROFILE\Documents\ADReports".Parametreler
Yukarıdaki iki parametre tüm modüllerde çalışır. Bunların dışında modüle özel parametreler var:
-StaleDays <gün>(AD-Overview) — Bir hesabın “eski” sayılması için gereken oturum-açmama süresi. Varsayılan: 180.-SkipHardware(AD-DCInventory) — DC başına CIM/WMI donanım ve performans toplamasını atlar, çalışma süresini ciddi şekilde kısaltır.-SkipExport(GPO-PolicyAnalyzer) — GPO’ları yeniden yedeklemez, mevcutGPOBackupsklasörünü yeniden analiz eder. Yedekleme adımı büyük ortamlarda en uzun süren kısımdır; ilk çalıştırmadan sonra raporu her tazelemek istediğinde bunu kullanın.-GPONames "GPO-A","GPO-B"(GPO-PolicyAnalyzer) — Yalnızca belirtilen GPO’ları analiz eder. Tüm ortamı taramak yerine şüphelendiğiniz birkaç GPO’ya odaklanmak için.-BackupPath <klasör>(GPO-PolicyAnalyzer) — GPO yedeklerinin yazılacağı klasör. Varsayılan: geçerli dizin altındaGPOBackups.-AdmxPath <klasör>(GPO-PolicyAnalyzer) — Policy isimlerini çözmek için kullanılacak ADMX/ADML klasörü. Varsayılan: sistemin PolicyDefinitions klasörü.
Tipik kullanım, GPO’ları bir kez yedekleyip analizi tekrar tekrar hızlı çalıştırmaktır:
.\Scripts\GPO-PolicyAnalyzer.ps1
.\Scripts\GPO-PolicyAnalyzer.ps1 -SkipExport
Raporları regülasyon gözüyle okumak
İşin asıl değer yaratan kısmı burası. Bu araçlar bir sızma testi ya da resmi bir uyumluluk sertifikası değildir ama denetimlerde en çok zaman alan işi, yani kanıt (evidence) toplamayı otomatikleştirir.
Aşağıda tipik bulguları başlıca çerçevelerle eşleştirdim.
KVKK açısından
KVKK’nın 12. maddesi, veri sorumlusuna kişisel verilere hukuka aykırı erişimi önlemek için uygun teknik ve idari tedbirleri alma yükümlülüğü getirir. Active Directory, çoğu kurumda kimlik ve erişimin merkezi olduğundan bu tedbirlerin büyük kısmı doğrudan Active Directory‘de yaşar:
- Eski, pasif, hiç kullanılmamış hesaplar (Overview, Credential): Gereksiz erişimler saldırı yüzeyidir. Bunları tespit edip kaldırmak, erişimi gerekenle sınırlama ilkesinin somut kanıtıdır.
- Zayıf parola/lockout politikası (Credential): Kimlik doğrulama güvenliği en temel teknik tedbirlerden biridir.
- Trust güvenliği (TrustRelationships): Harici taraflarla kurulan güven ilişkilerinin güvence altına alınması, veri paylaşımının kontrolüne dair kanıttır.
ISO/IEC 27001:2022 açısından
Annex A kontrolleriyle eşleme (rehber niteliğinde):
CIS Controls v8 açısından
- Control 1-2 (Asset envanteri): DCInventory ve Topology, hangi DC’lerin var olduğunu ve ne durumda olduklarını belgeler.
- Control 4 (Secure Configuration): GPO-PolicyAnalyzer, yapılandırmanın baseline’dan saptığı yerleri gösterir.
- Control 5-6 (Account & Access Management): Credential ve Overview, hesap hijyeninin doğrudan kanıtı.
Önerdiğim denetim döngüsü
- Referans al. Tüm modülleri çalıştırıp raporları tarih damgasıyla arşivleyin bu sizin sıfır noktası nız.
- Önceliklendirin. Önce yüksek riskli maddeler: SID filtering kapalı trust’lar, desteği biten DC işletim sistemleri, unconstrained delegation, eski krbtgt parolası.
- Düzeltin ve belgeleyin. Her düzeltme için sorumlu, tarih ve gerekçe kaydı tutun. Bu kayıt, denetçinin görmek istediği iz dir.
- Periyodik tekrarlayın. Aylık ya da çeyreklik yeniden çalıştırıp önceki raporla karşılaştırın; iyileşmeyi somut olarak, raporlarla kanıtlarsınız.
Bir güvenlik hatırlatması
Raporlar hassas bilgi içerir: hesap adları, DC isimleri, IP’ler, topoloji ve güvenlik zayıflıkları. Bunları herkese açık paylaşmayın; erişimi kısıtlı, tercihen şifreli bir konumda saklayın. Üretilen HTML/CSV dosyalarını ve GPO yedeklerini Git’e commit etmeyin depodaki .gitignore bunları zaten hariç tutar.
Kapanış
Active Directory Audit Suite’i, ortamımı gerçekten tanıyor muyum? sorusuna dürüst bir cevap vermek için yazdım. Tek bir doğru araç yok; ama salt okunur, çevrimdışı ve okunabilir bir fotoğraf, hem günlük operasyonda hem de denetim döneminde işi ciddi biçimde kolaylaştırıyor.
Proje MIT lisansıyla açık: dilediğiniz gibi kullanın, değiştirin, kurumunuza uyarlayın. Geri bildirim ve katkılara açığım.
Başka bir yazımızda görüşmek dileğiyle…