Hızlı Cevap

Active Directory saldırıları, bir saldırganın düşük yetkili tek bir domain hesabından başlayıp adım adım Domain Admin ya da Enterprise Admin yetkisine ulaşmasını sağlayan tekniklerdir. Modern bir kurumsal ağda en sık görülen zincir şudur: BloodHound ile saldırı yolunu haritalamak, Kerberoasting ve AS-REP Roasting ile servis hesabı parolalarını çevrimdışı kırmak, Shadow Credentials ve ACL istismarı ile hesap ele geçirmek, ADCS ESC1 sertifika yanlış yapılandırmasıyla yönetici sertifikası talep etmek ve son olarak DCSync ile krbtgt hash'ini çekip Golden Ticket üreterek tüm domaine kalıcı hakimiyet kurmak. Bu yazı, her tekniği savunma önerileriyle birlikte yetkili güvenlik eğitimi çerçevesinde anlatır.

Active Directory neden saldırganların ana hedefi?

Kurumsal ağların büyük çoğunluğu kimlik ve erişim yönetimini Active Directory (AD) üzerinde yürütür. Tek bir domain denetleyicisi (Domain Controller, DC) yüzlerce kullanıcı, bilgisayar ve servis hesabının kimliğini doğrular. Bu merkezîlik saldırgan için bir kazançtır: bir saldırgan ağda en küçük bir tutamak (foothold) elde ettiğinde, hedefi artık tek tek makineler değil, kimlik altyapısının kendisidir. Domain Admin yetkisi, pratikte ağdaki her makineye, her dosyaya ve her hesaba erişim demektir.

Sızma testlerinde (pentest) ve Red Team operasyonlarında AD ele geçirme, neredeyse standart bir hedeftir. Çünkü AD'nin esnekliği, yıllar içinde biriken yanlış yapılandırmalar ve eski ayarlar, çoğu kurumsal ortamda kullanılabilir en az bir zayıf halka bırakır. Aşağıdaki teknikler, MITRE ATT&CK çerçevesinde belgelenmiş, gerçek dünyada doğrulanmış ve savunmacıların mutlaka bilmesi gereken yöntemlerdir.

Not: Bu içerik yalnızca yetkili güvenlik testleri, CTF yarışmaları ve savunma amaçlı eğitim içindir. İzinsiz erişim Türk Ceza Kanunu 243 ila 245. madde kapsamında suçtur.

1. Keşif ve BloodHound: saldırı yolunu görmek

Bir saldırgan AD ormanına girdiğinde önce numaralandırma (enumeration) yapar. Hangi kullanıcılar, gruplar, bilgisayarlar var? Kim kimin üzerinde yetkili? Bu soruların yanıtı LDAP üzerinden, düşük yetkili herhangi bir domain hesabıyla bile alınabilir. Modern araçlar (örneğin NetExec / nxc) bir ağ bloğunu SMB ve LDAP üzerinden tarayıp domain denetleyicisini, işletim sistemlerini ve imzalama (signing) durumunu ortaya çıkarır.

Asıl güç ise BloodHound ile gelir. BloodHound, AD'deki ilişkileri (grup üyelikleri, ACL'ler, oturumlar, delegasyonlar) bir grafik veritabanına döker ve "şu hesaptan Domain Admin'e giden en kısa yol nedir?" sorusunu görselleştirir. SpecterOps tarafından geliştirilen bu araç, saldırganın tek tek hesaplara değil, ilişkilere odaklanmasını sağlar. Çünkü AD'de gerçek güç, bireysel hesaplarda değil, aralarındaki güven ve yetki bağlarındadır.

Tipik bir BloodHound bulgusu şuna benzer: düşük yetkili bir kullanıcı, bir servis hesabını Kerberoast edebilir; o servis hesabının bir yönetici hesabı üzerinde GenericWrite ACL'i vardır; o yönetici hesabı ADCS sunucusunda sertifika talep edebilir. Bu zincir, BloodHound olmadan saatler sürerken, grafik analiziyle saniyeler içinde ortaya çıkar.

Savunma: Düzenli olarak BloodHound'u kendi ortamınıza karşı çalıştırın (mor takım yaklaşımı). Tehlikeli ACL'leri (GenericWrite, GenericAll, WriteDacl) temizleyin, Tier 0 varlıklarını izole edin ve gereksiz yönetici grup üyeliklerini kaldırın.

2. Kerberoasting ve AS-REP Roasting: kırılabilir biletler

Kerberos, AD'nin kimlik doğrulama protokolüdür ve iki ünlü zayıflığı vardır.

Kerberoasting (T1558.003): Bir Service Principal Name (SPN) atanmış her servis hesabı için, herhangi bir domain kullanıcısı bir TGS (Ticket Granting Service) bileti talep edebilir. Bu bilet, servis hesabının NTLM parola hash'iyle şifrelenir. Saldırgan bileti alır, ağdan koparak çevrimdışı bir kelime listesiyle (örneğin rockyou.txt) kırar. Sunucu bu kırma denemesini hiç görmez. Zayıf parolaya sahip servis hesapları bu yöntemle dakikalar içinde düşer. Impacket'in GetUserSPNs.py aracı bu işi tek komutla yapar; kırma ise hashcat'in -m 13100 moduyla gerçekleşir.

AS-REP Roasting (T1558.004): Eğer bir hesapta "Kerberos ön kimlik doğrulaması gerektirme" (DONT_REQ_PREAUTH) ayarı kapalıysa, saldırgan o hesabın AS-REP yanıtını parola bilmeden talep edebilir ve yine çevrimdışı kırabilir. GetNPUsers.py bu hesapları otomatik bulur; hashcat modu -m 18200'dür.

Bu iki teknik, "kimlik doğrulamadan önce" çalıştığı için son derece sessizdir ve bir domain kullanıcısı kadar yetki gerektirir.

Savunma: Servis hesapları için gMSA (Group Managed Service Accounts) kullanın; bunların parolaları 120+ karakterdir ve otomatik döner. Kerberoastable SPN sayısını azaltın, AES şifrelemeyi zorunlu kılın ve hiçbir hesapta gereksiz yere ön kimlik doğrulamayı kapatmayın.

3. Shadow Credentials: parola sıfırlamadan hesap ele geçirme

Klasik ACL istismarında, bir hesabın üzerinde yazma yetkiniz (örneğin GenericWrite) varsa, parolasını sıfırlar ve giriş yaparsınız. Ama bu hem gürültülüdür hem de kullanıcıyı kilitler. Shadow Credentials (T1098) çok daha zarif bir yöntemdir.

Windows, sertifika tabanlı kimlik doğrulama (PKINIT) için her hesabın msDS-KeyCredentialLink adlı bir özniteliğini kullanır. Hedef hesap üzerinde yazma yetkiniz varsa, bu öznitelliğe kendi anahtarınızı eklersiniz. Ardından PKINIT ile o hesap olarak kimlik doğrular ve NT hash'ini geri alırsınız (UnPAC-the-hash). Parola hiç değişmez, kullanıcı hiçbir şey fark etmez ve işlem bitince öznitelik geri yüklenebilir. Certipy aracının shadow auto komutu tüm bu zinciri otomatikleştirir.

Bu teknik, profesyonellerin bile sıklıkla yeni keşfettiği bir yöntemdir çünkü hem sessizdir hem de güçlü: bir ACL kenarını doğrudan tam hesap ele geçirmeye çevirir.

Savunma: msDS-KeyCredentialLink değişikliklerini denetim günlükleriyle izleyin (Event ID 5136). Key Trust gerektirmiyorsanız ADCS'yi sıkılaştırın ve hesaplar üzerindeki yazma yetkilerini en aza indirin.

4. ADCS ESC1: sertifika ile Domain Admin olmak

Active Directory Certificate Services (ADCS), kurumların kendi sertifikalarını yönettiği bir bileşendir ve modern AD saldırılarının en güçlü cephesidir. SpecterOps'un "Certified Pre-Owned" araştırması, ESC1'den ESC8'e kadar bir dizi yanlış yapılandırmayı belgeledi. Bunların en bilineni ESC1'dir.

ESC1 üç koşulun bir araya gelmesiyle oluşur: (1) düşük yetkili kullanıcılar sertifika şablonuna enroll olabiliyor, (2) şablonda Client Authentication EKU'su var ve (3) en kritiği, enrollee subject'i (SAN) kendisi belirleyebiliyor. Bu üçü bir aradayken, sıradan bir kullanıcı sertifika talebinde "ben administrator@domain" diyebilir ve CA ona Domain Admin adına geçerli bir sertifika verir. Saldırgan o sertifikayla Kerberos üzerinden kimlik doğrular, TGT alır ve UnPAC-the-hash ile administrator'ın NT hash'ini çeker. Certipy bu zinciri find, req ve auth komutlarıyla uçtan uca yapar.

ESC1, sertifikaların parolalardan farklı olarak uzun ömürlü olması ve parola değişiminden etkilenmemesi nedeniyle aynı zamanda kalıcılık (persistence) sağlar. Bu yüzden uzmanlar bile ilk gördüklerinde "bunu bilmiyordum" der.

Savunma: Zafiyetli şablonlarda "enrollee supplies subject" seçeneğini kapatın, manager onayı zorunlu kılın, enroll yetkisini kısıtlayın ve ADCS olaylarını (sertifika talepleri) merkezî olarak izleyin. Certipy'yi kendi ortamınıza karşı çalıştırıp ESC1-ESC8'i kapatın.

5. DCSync ve Golden Ticket: tüm domaine kalıcı hakimiyet

Domain Admin yetkisine ulaştıktan sonra hedef, kalıcılıktır. DCSync (T1003.006), saldırganın bir domain denetleyicisinin replikasyon davranışını taklit ederek (DRSUAPI protokolü) herhangi bir hesabın parola hash'ini, DC'ye fiziksel olarak girmeden çekmesini sağlar. En değerli hedef krbtgt hesabının hash'idir.

krbtgt hash'i elinizdeyse, Golden Ticket (T1558.001) üretebilirsiniz: istediğiniz kullanıcı için (Enterprise Admin dahil), istediğiniz grup üyelikleriyle, süresiz ve geçerli bir TGT bileti. Bu, domaine neredeyse silinemez bir arka kapıdır; çünkü krbtgt parolası nadiren değiştirilir. Impacket'in secretsdump.py aracı DCSync'i, ticketer.py ise Golden Ticket üretimini yapar. Son adımda secretsdump -just-dc ile NTDS.dit (tüm domainin parola veritabanı) dökülür; bu, crown jewel'dir.

Savunma: krbtgt parolasını düzenli olarak (ve ele geçirme şüphesinde iki kez) döndürün. DCSync'i tespit etmek için DC'lerde "Directory Service Replication" olaylarını izleyin ve yetkisiz replikasyon kaynaklarını alarmlayın. Tier 0 izolasyonu, LAPS, ve ayrıcalıklı erişim iş istasyonları (PAW) bu saldırıların etkisini sınırlar.

Bu zinciri güvenli bir ortamda deneyimleyin

Yukarıdaki tekniklerin tamamını DSET Akademi Red Team Lab'in ikinci bölümünde, tarayıcınızda, tamamen simüle bir kurgusal domain (acme.local) üzerinde gerçek komutlarla deneyimleyebilirsiniz. Her aşama bir MITRE ATT&CK tekniğine eşlenir, kademeli ipuçları yöntemi cevabı vermeden öğretir ve sonunda doğrulanabilir bir tamamlama sertifikası alırsınız. Eğitim %100 simüledir; hiçbir gerçek sisteme dokunulmaz.

DSET Red Team Lab · Bölüm II'ye git

DSET'in yapay zeka destekli güvenlik platformu KAOS ve sunduğumuz diğer hizmetler hakkında daha fazla bilgi için KAOS sayfamızı ve hizmetlerimizi inceleyebilirsiniz. Sızma testi ihtiyaçlarınız için bizimle iletişime geçin.

Sıkça Sorulan Sorular

Active Directory saldırıları yasal mı? Bu teknikleri yalnızca açıkça yetkili olduğunuz sistemlerde (kendi laboratuvarınız, yetkili pentest sözleşmesi, CTF) uygulayabilirsiniz. İzinsiz uygulama suçtur.

Kerberoasting için yönetici olmak gerekir mi? Hayır. Herhangi bir geçerli domain kullanıcısı, SPN'i olan servis hesaplarının biletlerini talep edebilir. Bu yüzden bu kadar tehlikelidir.

ADCS ESC1'i nasıl kapatırım? Zafiyetli sertifika şablonunda "enrollee supplies subject" ayarını kapatın, manager onayını etkinleştirin ve enroll yetkilerini kısıtlayın. Certipy ile kendi ortamınızı tarayın.

Golden Ticket'ı tespit edebilir miyim? Doğrudan zordur çünkü bilet kriptografik olarak geçerlidir. Ancak anormal bilet ömürleri, var olmayan hesaplar için biletler ve krbtgt kullanım desenleri SIEM'de avlanabilir. En etkili önlem krbtgt parolasını düzenli döndürmektir.

BloodHound savunma için kullanılır mı? Kesinlikle. Savunmacılar BloodHound'u kendi ortamlarına karşı çalıştırarak saldırı yollarını saldırgandan önce keşfedip kapatır. Bu, mor takım çalışmasının temel araçlarından biridir.

Dış Kaynaklar

  • MITRE ATT&CK: Kerberoasting (T1558.003), AS-REP Roasting (T1558.004), DCSync (T1003.006), Golden Ticket (T1558.001) teknik sayfaları
  • SpecterOps, "Certified Pre-Owned: Abusing Active Directory Certificate Services" (ADCS ESC1-ESC8 araştırması)
  • BloodHound resmi dokümantasyonu (SpecterOps)
  • Microsoft, Kerberos kimlik doğrulama ve Active Directory güvenlik referansları
  • Impacket ve Certipy proje dokümantasyonları