# önder online
Teknoloji ve siber güvenlik dünyasına hoş geldiniz Güncel siber tehditler ve korunma yöntemleri Yapay zekâ ve otomasyonun güvenliğe etkileri Microsoft 365 ve Active Directory güvenlik rehberleri Yazılım geliştirmede güvenlik odaklı yaklaşımlar Teknoloji ve siber güvenlik dünyasına hoş geldiniz Güncel siber tehditler ve korunma yöntemleri

Menu

Active Directory'de Risk Odaklı Güvenlik: 10 Adımda GPO Yapılandırması

Active Directory'de Risk Odaklı Güvenlik: 10 Adımda GPO Yapılandırması

Gerçek bir kurumsal ortamda güvenlik, "Kimin neye eriştiği" kadar "Cihazın ve kullanıcının nasıl davranabileceği" ile ilgilidir. 500+ kullanıcılı senaryomda uyguladığım 10 kritik GPO yapılandırması

1. Katman: Etki Alanı Genelinde Temel Güvenlik (Domain-Wide Baseline)

Bu politikalar, istisnasız tüm kullanıcıları ve cihazları kapsayan "savunma hattı"dır.

1. Katı Şifre Politikaları (Password Policy)

Varsayılan ayarlar genellikle yetersizdir.

  • Uygulama: Minimum 12 karakter, karmaşıklık gereksinimleri ve son 24 şifrenin hatırlanması.

  • Neden: Kaba kuvvet (brute-force) saldırılarını zorlaştırmak için.

2. Hesap Kilitleme Eşiği (Account Lockout Policy)

  • Uygulama: 5 hatalı denemede 30 dakika kilitlenme.

  • Neden: Otomatik saldırı araçlarının hesabınızı ele geçirmesini engeller.

3. Gelişmiş Denetim Kaydı (Advanced Audit Policy)

Sadece "bir şeyler oldu" demek yetmez, "ne olduğunu" bilmeniz gerekir.

  • Uygulama: Başarılı/Başarısız oturum açma işlemleri, nesne erişimi ve ayrıcalık kullanımı denetimi.

  • Neden: Bir ihlal durumunda adli bilişim (forensics) için iz bırakır.


2. Katman: Rol Tabanlı Kısıtlamalar (Role-Based Access Control)

Her birimin ihtiyacı farklıdır. İK'nın verisi ile BT'nin yetkisi bir tutulamaz.

4. USB ve Çıkarılabilir Medya Kısıtlaması

  • Hedef: Fakülte ve Öğrenciler.

  • Uygulama: USB depolama birimlerine yazma veya tamamen okuma engeli.

  • Neden: Veri sızıntısını (Data Exfiltration) ve zararlı yazılımların fiziksel yolla bulaşmasını önlemek.

5. Klasör Yönlendirme (Folder Redirection)

  • Hedef: Tüm kullanıcılar.

  • Uygulama: Masaüstü ve Belgeler klasörlerini merkezi bir dosya sunucusuna yönlendirme.

  • Neden: Kullanıcı bilgisayarı bozulsa bile verilerin yedeklenmiş ve güvenli bir sunucuda kalmasını sağlar.

6. Maksimum Karantina (Hassas Veri Birimleri)

  • Hedef: İK ve Akademik Hizmetler.

  • Uygulama: İnternet erişim kısıtlamaları, sadece belirli uygulamaların çalışmasına izin verilmesi (AppLocker).

  • Neden: En kritik veriyi işleyen personelin hata payını minimize etmek.

7. Minimum Kısıtlama (BT Hizmetleri)

  • Hedef: Sistem Yöneticileri.

  • Uygulama: Yönetimsel araçlara erişim izni ancak internet tarayıcı kısıtlamaları.

  • Neden: BT personeli işini yapabilmeli ancak kendi yetkili hesaplarıyla riskli sitelerde sörf yapmamalıdır.


3. Katman: Uç Nokta Sertleştirme (Endpoint Hardening)

Bilgisayar laboratuvarları gibi "yüksek riskli" alanlar için tam kontrol şarttır.

8. Kontrol Paneli ve CMD Engelleme

  • Uygulama: Prohibit access to Control Panel ve Prevent access to the command prompt ayarlarının aktifleştirilmesi.

  • Neden: Kullanıcının sistem ayarlarını değiştirmesini veya yerel komutlarla güvenlik politikalarını atlatmasını engeller.

9. Yazılım Kısıtlama Politikaları (SRP)

  • Uygulama: %AppData% veya Downloads klasörlerinden .exe veya .msi çalıştırılmasının engellenmesi.

  • Neden: Kullanıcıların internetten indirdikleri zararlı yazılımları kazara çalıştırmasını durdurur.

10. Agresif Ekran Kilidi

  • Uygulama: 5 dakikalık hareketsizlik sonrası parola korumalı ekran koruyucu.

  • Neden: Açık bırakılan terminallerin yetkisiz kişilerce kullanılmasını önlemek.


Pratikten Çıkarılan Dersler (Pro Tips)

GPO yapılandırmak sadece kutucukları işaretlemek değildir; mantığı anlamaktır:

  • Bağlantı Mantığı: GPO'lar Güvenlik Gruplarına değil, OU'lara bağlanır. Belirli kişileri hedeflemek istiyorsanız "Security Filtering" kullanmalısınız.

  • Reboot vs. Logoff: Bilgisayar ayarları (Computer Configuration) için cihazın yeniden başlaması; Kullanıcı ayarları (User Configuration) için kullanıcının çıkış yapıp tekrar girmesi gerekir.

  • Ön Hazırlık: Sürücü eşleme (Drive Mapping) yapacaksanız, GPO'yu basmadan önce klasörün hedef sunucuda fiziksel olarak var olduğundan ve izinlerinin doğru olduğundan emin olun.

  • Sadelik Güvenliktir: 100 farklı küçük politika yerine, benzer ayarları mantıklı gruplar halinde birleştirin. Bu, "GPO Bloat" denilen hantallığı önler ve oturum açma sürelerini hızlandırır.


GPO yapılandırmak işin yarısıysa, diğer yarısı bu politikaların uç noktada gerçekten uygulanıp uygulanmadığını doğrulamaktır. Active Directory dünyasında "Neden bu duvar kağıdı değişmedi?" veya "Neden hala USB takabiliyorum?" sorularının cevabı RSOP (Resultant Set of Policy) ve onun komut satırı kardeşi gpresult araçlarında gizlidir.


1. RSOP.msc: Görsel Doğrulama

RSOP, kullanıcıya uygulanan tüm GPO'ların birleşmiş halini standart bir Group Policy Management konsolu gibi gösteren grafiksel bir araçtır.

  • Nasıl Çalıştırılır: Hedef bilgisayarda Win + R tuşlarına basıp rsop.msc yazarak başlatılır.

  • Ne Sağlar: Sistemin o anki politikasını tarar ve size "nihai sonucu" gösterir. Eğer bir ayar "Enabled" görünüyorsa, o ayar başarıyla uygulanmıştır.

  • Sınırlaması: RSOP artık "legacy" (eski) kabul ediliyor. Bazı yeni nesil GPO ayarlarını (örneğin Registry bazlı tercihler) her zaman doğru göstermeyebilir.


2. GPResult: Güçlü ve Detaylı Analiz

Gerçek bir sistem yöneticisinin asıl silahı komut satırıdır. gpresult, politikanın neden uygulanmadığını (çakışma mı var, izin hatası mı?) söyler.

Temel Komutlar:

  • Hızlı Özet: gpresult /r

    • Hangi GPO'ların uygulandığını (Applied GPO), hangilerinin kapsam dışı kaldığını (Filtered Out) listeler.

  • Detaylı Rapor (HTML):

    gpresult /h rapor.html

    • Bu komut, tüm detayları şık bir HTML dosyasına döker. Çakışan ayarları, hangi GPO'nun diğerini ezdiğini (Precedence) burada renkli tablolarla görebilirsin.


3. Politika Çakışmalarını Anlamak (Precedence)

Laboratuvarında 10 farklı GPO yapılandırdığın için "Precedence" (Öncelik Sırası) en kritik konun haline geldi. Bir ayar hem "Alan Genelinde" hem de "OU Seviyesinde" yapılandırılmışsa ne olur?

  • LSDOU Kuralı: Politikalar şu sırayla uygulanır: Local -> Site -> Domain -> Organizational Unit.

  • Son Gelen Kazanır: Alt seviyedeki OU'ya bağladığın kısıtlama (örneğin Uç Nokta Sertleştirme), Domain seviyesindeki genel ayarı ezer.

  • WMI Filtering: Eğer bir GPO'yu sadece Windows 11'lere uygulamak için filtrelediysen, gpresult raporunda bu GPO'nun "WMI Filter" nedeniyle neden uygulanmadığını görebilirsin.


4. Uygulama ve Zorlama (Force Update)

Bir GPO ayarını değiştirdiğinde, istemcinin bunu hemen almasını beklemek yerine şu adımları izlemek laboratuvar ortamında hayat kurtarır:

  1. İstemci Tarafında: gpupdate /force komutunu çalıştır.

  2. Kritik Ayarlarda: Bilgisayar yapılandırması değiştiyse cihazı yeniden başlat, kullanıcı yapılandırması değiştiyse logoff yap.

  3. DC Tarafında: Eğer birden fazla Domain Controller varsa, replikasyonun tamamlanmasını bekle veya manuel tetikle.


Red Team bakış açısıyla en yaygın bypass yöntemleri ve bunları engelleme yolları şunlardır:


1. GPO Bilgi Toplama (Enumeration)

Saldırgan sisteme sızdığında ilk yaptığı şey, hangi GPO'ların aktif olduğunu anlamaktır.

  • Saldırı: PowerView veya BloodHound gibi araçlarla hangi kullanıcıların "GPO Edit" yetkisi olduğunu veya hangi bilgisayarlarda kısıtlamaların gevşek olduğunu haritalandırır.

  • Savunma: "En az yetki" (Least Privilege) prensibini uygula. GPO yönetim yetkisini sadece kısıtlı bir Domain Admin grubuna ver. Normal kullanıcıların GPO nesnelerini okuma yetkisini kısıtlamak zordur (varsayılan AD yapısı gereği), ancak yetki delegasyonunu sıkı tutabilirsin.


2. "AppLocker" ve Yazılım Kısıtlama Bypassları

Senin kurduğun "İndirilenler klasöründe .exe çalıştırma yasağı" harika bir başlangıç, ama saldırganlar kurnazdır.

  • Saldırı: Kullanıcı .exe çalıştıramıyorsa, saldırgan .ps1 (PowerShell), .vbs veya rundll32.exe gibi Windows'un kendi araçlarını kullanarak zararlı kod yürütür (Living off the Land).

  • Savunma: * PowerShell Constrained Language Mode: GPO ile PowerShell'i kısıtlayarak saldırganın gelişmiş komutlar çalıştırmasını engelle.

    • Uzantı Bazlı Değil, İmza Bazlı Engelleme: Sadece belirli klasörleri değil, "Microsoft tarafından imzalanmamış" tüm dosyaları engelleyen bir beyaz liste (Whitelisting) politikasına geç.


3. Komut İstemi (CMD/PowerShell) Engeli Bypass

gpedit ile CMD'yi engelledin ama bu sadece "etkileşimli" kabuğu engeller.

  • Saldırı: Bir .bat dosyası hazırlayıp içine komutlarını yazar ve çalıştırır. Windows bunu engellemez çünkü sadece kullanıcıya bir komut satırı ekranı açmasını yasakladın, arka planda komut yürütülmesini değil.

  • Savunma: AppLocker veya Windows Defender Application Control (WDAC) kullanarak betik (.bat, .ps1, .js) dosyalarının yürütülmesini tamamen denetim altına al.


4. GPO "Gecikmesi" ve Yerel Admin Hakları

GPO'lar her 90 dakikada bir güncellenir.

  • Saldırı: Eğer kullanıcı yerel admin haklarına sahipse, GPO'nun uyguladığı bir Registry ayarını değiştirebilir ve bir sonraki GPO güncellemesine kadar (veya ağ bağlantısını keserek süresiz olarak) kısıtlamayı devre dışı bırakabilir.

  • Savunma: Restricted Groups GPO'sunu kullanarak kullanıcıları yerel "Administrators" grubundan zorla çıkar. Hiçbir son kullanıcı kendi makinesinde admin olmamalıdır.


5. SYSVOL İçindeki "GPP" Parolaları (Klasik Bir Hata)

Eğer eski bir laboratuvar rehberi izlediysen, "Group Policy Preferences" (GPP) ile yerel admin şifresi belirlemiş olabilirsin.

  • Saldırı: GPO ayarları SYSVOL klasöründe XML dosyaları olarak saklanır. Microsoft eskiden buradaki şifreleri "AES" ile şifreliyordu ama anahtarı halka açık bir şekilde yayınladı. Saldırgan bu klasöre erişip saniyeler içinde yerel admin şifreni çözebilir.

  • Savunma: LAPS (Local Administrator Password Solution) kullan. LAPS, her bilgisayar için benzersiz ve rastgele bir yerel admin şifresi oluşturur ve bunu AD üzerindeki güvenli bir nitelikte saklar.


Red Team Testi İçin Küçük Bir Ödev:

Laboratuvarındaki bir istemci makinede şunu dene:

  1. CMD engelliyken, bir Notepad aç.

  2. İçine ipconfig /all ve altına pause yaz.

  3. .txt yerine .bat olarak kaydet ve çalıştır.

    Sonuç: Komut çalıştı mı? Eğer çalıştıysa, "Endpoint Hardening" katmanında sadece kabuğu değil, betik yürütmeyi de hedeflemen gerektiğini görmüş olacaksın.

Red Team analizinden sonra savunma hattını güçlendirmek için en kritik iki kaleye odaklanalım: LAPS (Local Administrator Password Solution) ve PowerShell Kısıtlama Politikaları. Bu iki yapılandırma, saldırganların yanal hareket (lateral movement) ve kod yürütme yeteneklerini büyük ölçüde kısıtlar.

1. LAPS: Yerel Parola Güvenliği (Arka Kapıyı Kilitlemek)

LAPS, her bilgisayardaki yerel yönetici parolasını benzersiz ve rastgele hale getirir. Microsoft, 2023 yılında Windows LAPS'i doğrudan işletim sistemine entegre ederek eski (legacy) MSI tabanlı çözümü güncelledi.

Kurulum Adımları:

  1. Şema Genişletme: AD şemanızı LAPS niteliklerini saklayacak şekilde güncelleyin.

    • Komut: Update-LapsADSchema (PowerShell üzerinden Domain Admin yetkisiyle).

  2. GPO Oluşturma: Computer Configuration -> Admin Templates -> System -> LAPS yolunu izleyin.

    • Configure password backup directory: Parolaların AD'de saklanmasını seçin.

    • Password Settings: Karmaşıklık, uzunluk ve değiştirme periyodunu (örneğin 30 gün) belirleyin.

  3. İzinlerin Yönetimi: Varsayılan olarak parolalar şifrelenmiştir. Sadece BT yetkililerinin bu parolaları okumasına izin verin (Set-LapsADReadPasswordPermission).

2. PowerShell Kısıtlama Politikaları (Kodu Etkisiz Hale Getirmek)

Sadece CMD'yi engellemek yetmez; PowerShell'in gelişmiş özelliklerini de dizginlemek gerekir.

  • Constrained Language Mode (CLM): PowerShell'in en güçlü (ve tehlikeli) .NET fonksiyonlarını devre dışı bırakır.

    • Uygulama: Bu mod genellikle AppLocker veya Windows Defender Application Control (WDAC) ile tetiklenir. Bir script "Allow" listesinde değilse, otomatik olarak CLM modunda çalışır ve saldırganın gelişmiş zararlı kodlar çalıştırmasını engeller.

  • Execution Policy: Sadece imzalı scriptlerin çalışmasına izin verin.

    • GPO: Computer Configuration -> Admin Templates -> Windows Components -> Windows PowerShell -> Turn on Script Execution.

    • Ayar: Allow only signed scripts.

  • Logging (Görünürlük):

    • Module Logging: Hangi komutların çalıştığını kaydeder.

    • Script Block Logging: Çalıştırılan kodun içeriğini (karartılmış/obfuscated olsa bile) Event Viewer'a yansıtır.

LAPS ile saldırganın bir bilgisayarı ele geçirdikten sonra aynı şifreyle diğerine atlamasını (Pass-the-Hash) engellersin. PowerShell kısıtlamalarıyla da, içeri sızsa bile sistem komutlarını silah olarak kullanmasını zorlaştırırsın.

Bu yapılandırmalar laboratuvarını "kurumsal seviyede güvenli" bir ortama dönüştürecektir. LAPS kurulumu ve detaylı demo videosu, Active Directory üzerinde şifre yönetimini nasıl otomatize edeceğinizi uygulamalı olarak göstermektedir.