Siber Güvenlik
Kurumsal Ağlarda Active Directory ve Domain Controller Sızma Testi (Pentest) Metodolojisi

Kurumsal şirketlerin dijital altyapılarında yönetim kolaylığı, merkezi kimlik doğrulaması ve kaynak erişim kontrolü denildiğinde akla gelen ilk ve en yaygın mimari Active Directory (AD) yapısıdır. Fortune 500 şirketlerinden orta ölçekli işletmelere kadar küresel ölçekteki kuruluşların %90'ından fazlası, kullanıcı hesaplarını, bilgisayarları, sunucuları ve erişim haklarını yönetmek için Microsoft Active Directory dizin hizmetlerini kullanmaktadır.
Bu merkezi yapının kalbinde ise etki alanının (Domain) beyni konumunda olan Domain Controller (DC) sunucuları yer alır. Domain Controller, ağdaki tüm kullanıcıların parolalarını, kerberos biletlerini, grup ilkelerini (GPO) ve kritik veritabanını (NTDS.dit) bünyesinde barındırır. Bu durum, siber saldırganların bir kurumsal ağa sızdıktan sonraki nihai hedefini doğrudan belirler: Domain Controller sunucusunu ele geçirmek ve Domain Admin yetkisine ulaşmak.
Geleneksel ağ sızma testleri veya otomatik zafiyet tarama yazılımları, genellikle işletim sistemi yamaları veya açık portlar seviyesinde yüzeysel bulgular üretir. Ancak bir Active Directory ortamındaki asıl tehlike, güncellenmemiş yazılımlardan ziyade hatalı yapılandırılmış erişim kontrol listeleri (ACL/ACE), zayıf parola politikaları, gereksiz yetki devirleri (Delegated Rights), eski kimlik doğrulama protokolleri ve mimari tasarım hatalarıdır.
Gerçekleştirilecek profesyonel bir Active Directory sızma testi, gerçek bir saldırganın gözünden iç ağdaki bu mantıksal ve mimari açıkları ortaya çıkararak kurumların siber dayanıklılığını en üst seviyeye taşır. Bu kapsamlı rehberde, kurumsal ağ güvenlik testi süreçlerinde uygulanan Active Directory sızma testi metodolojisini, offensive güvenlik araçlarını, saldırı vektörlerini ve Domain Controller sıkılaştırma (hardening) adımlarını tüm teknik detaylarıyla inceliyoruz.
Active Directory Sızma Testi Nedir ve Neden Kritik Önem Taşır?
Active Directory sızma testi, bir kurumun iç ağına fiziksel veya mantıksal olarak erişim sağlayan bir saldırganın (veya yetkileri kötüye kullanmaya çalışan kötü niyetli bir iç çalışanın), düşük yetkili bir hesaptan başlayarak adım adım Domain Admin veya Enterprise Admin seviyesine ulaşma süreçlerini simüle eden gelişmiş bir kurumsal ağ güvenlik testi çalışmasıdır.
Bu test, klasik port taraması ve zafiyet tespitinin ötesine geçerek Kimlik Tabanlı Güvenlik (Identity Security) konseptine odaklanır. Bir kurumda tüm sunucular tamamen güncel olsa dahi, tek bir kullanıcının Active Directory üzerindeki hatalı bir izni veya zayıf bir hizmet hesabı (SPN) parolası, tüm etki alanının dakikalar içinde düşmesine neden olabilir.
İç Ağ Saldırılarında Ransomware ve APT Gruplarının İzlediği Yollar
Son yıllarda dünyayı ve ülkemizi tehdit eden gelişmiş sürekli tehdit (APT) grupları ve fidye yazılımı (Ransomware-as-a-Service - RaaS) çeteleri (LockBit, BlackCat, Clop vb.), saldırı operasyonlarında mantıksal bir sıra izler. Bu gruplar dış ağdan bir oltalama (phishing) e-postası veya VPN zafiyeti ile iç ağa ilk erişimi (Initial Access) sağladıktan sonra, veri şifreleme veya veri sızdırma aşamasına geçmeden önce mutlaka Active Directory ortamında hakimiyet kurmaya çalışırlar.
Gelişmiş saldırı gruplarının izlediği temel adımlar şu şekildedir:
| # | Başlık | Açıklama |
|---|---|---|
| 1. | İlk Bağlantı ve İstemci Ele Geçirme | Bir çalışan makinesinde zararlı kod çalıştırılarak düşük yetkili bir komut satırı erişimi (Shell) elde edilir. |
| 2. | Keşif ve Mantıksal Haritalama | Active Directory veritabanı sorgulanarak etki alanındaki yüksek yetkili hesaplar, Domain Controller IP adresleri ve yönetimsel ilişkiler çıkarılır. |
- Yetki Yükseltme ve Yatayda İlerleme (Lateral Movement): İstemci belleğinden (LSASS) elde edilen oturum bilgileri veya Kerberos protokol zafiyetleri kullanılarak diğer sunuculara sıçranır.
- Domain Dominance ve Tam Kontrol: Domain Controller sunucusunda yetki elde edilerek tüm ağa tek bir merkezden Group Policy (GPO) aracılığıyla fidye yazılımı dağıtılır.
Saldırganlar verileri şifrelemeden veya sızdırmadan önce Active Directory yapısını tamamen kontrol altına aldıkları için, kurumların güvenlik duvarları veya uç nokta güvenlik çözümleri (EDR) tek başına yeterli korumayı sağlayamaz. Bu noktada, sistemlerin düzenli olarak test edilmesi, olası sızma senaryolarının önceden tespiti ve Sızma Testi çözümleri ile iç ağ mimarisinin bağımsız uzmanlarca denetlenmesi hayati bir gerekliliktir.
Kurumsal Şirket içi Active Directory Güvenlik Testi Metodolojisi
Etkin ve tekrarlanabilir bir iç ağ pentest metodolojisi, offensive siber güvenlik uzmanlarının rastgele denemeler yapmak yerine, standartlaştırılmış ve aşamalı bir yaklaşımla hareket etmesini sağlar. drdisklab tarafından uygulanan Active Directory sızma testi metodolojisi, uluslararası NIST SP 800-115, PTES (Penetration Testing Execution Standard) ve MITRE ATT&CK for Enterprise çerçeveleriyle tam uyumlu 7 temel aşamadan oluşur.
Active Directory Sızma Testi Yaşam Döngüsü
- Aşama 1: Bilgi Toplama ve Keşif (Reconnaissance & Enumeration)
- Dizin yapısının, kullanıcıların, grupların, bilgisayarların, GPO ve ACL nesnelerinin yetkisiz/yetkili sorgulanması.
- Aşama 2: İlk Erişim ve Ağ Zehirleme (Initial Access & Network Poisoning)
- Ağdaki güvensiz yayın protokollerinin (LLMNR, NBT-NS, mDNS, IPv6) dinlenmesi, zehirlenmesi ve NTLM röle (relay) saldırıları.
- Aşama 3: Kerberos ve NTLM Kimlik Doğrulama Saldırıları
- Kerberoasting, AS-REP Roasting, Pass-the-Hash ve Unconstrained/Constrained Delegation zafiyetlerinin sömürülmesi.
- Aşama 4: Yerel ve Etki Alanı Düzeyinde Yetki Yükseltme (Privilege Escalation)
- İşletim sistemi çekirdek ve servis zafiyetleri, hatalı yapılandırılmış Active Directory izinleri (GenericAll, WriteDacl vb.) üzerinden yetki artırımı.
- Aşama 5: Yatayda İlerleme ve Kimlik Bilgisi Avcılığı (Lateral Movement & Credential Harvesting)
- LSASS dump işlemleri, RAM üzerinden token çekme, WMI, WinRM ve PsExec ile diğer sunuculara sıçrama.
- Aşama 6: Domain Controller Ele Geçirme ve Kalıcılık (Domain Dominance & Persistence)
- DCSync saldırısı ile tüm NTLM hash'lerinin çekilmesi, Golden/Silver Ticket üretimi ve AD CS (Sertifika Hizmetleri) sömürüsü.
- Aşama 7: Raporlama, İyileştirme (Remediation) ve Yeniden Test
- Keşfedilen tüm bulguların risk seviyelerine göre derecelendirilmesi, kök neden analizleri, düzeltme önerileri ve doğrulama testi.
Aşama 1: Bilgi Toplama ve Active Directory Keşif Aşaması (Reconnaissance & Enumeration)
Bir Active Directory sızma testinde başarının %70'i kaliteli keşif aşamasına dayanır. Active Directory mimarisi, tasarımı gereği ağa dahil olan her istemcinin dizindeki diğer nesneler hakkında bilgi sorgulamasına izin verir. Bu durum, saldırganın veya sızma testi uzmanının herhangi bir özel yetkiye sahip olmadan büyük miktarda teknik veri toplamasına olanak tanır.
Pasif ve Aktif Keşif Teknikleri
Keşif aşamasında hem ağ trafiğini dinleyen pasif yöntemler hem de dizin protokollerine (LDAP, RPC, SMB, DNS) doğrudan sorgu atan aktif teknikler bir arada kullanılır.
1. LDAP Sorguları ve BloodHound ile Graf Analizi
LDAP (Lightweight Directory Access Protocol), Active Directory veritabanındaki tüm nesneleri sorgulamak için kullanılan temel protokoldür. Sızma testi uzmanları, sıradan bir Domain User hesabı kullanarak tüm dizin haritasını dışarı aktarabilir.
Günümüz Active Directory sızma testlerinin vazgeçilmez aracı BloodHound'dur. BloodHound, Active Directory ortamındaki kullanıcılar, bilgisayarlar, gruplar, oturumlar ve ACL (Access Control List) izinleri arasındaki ilişkileri Graph teorisi kullanarak görselleştirir.
Sızma testi uzmanı, bloodhound-python veya SharpHound.exe veri toplayıcısını (ingestor) çalıştırarak dizin verilerini toplar:
# Python tabanlı Bloodhound toplayıcısı ile Domain verilerinin çekilmesi
bloodhound-python -u 'ahmet.yilmaz' -p 'Sirket2024!' -d kurumsal.local -dc dc01.kurumsal.local -c All --zip
Elde edilen veriler BloodHound GUI arayüzüne yüklendiğinde, sıradan bir kullanıcıdan başlayıp Domain Admin hesabına giden en kısa yetki yükseltme yolu (Find Shortest Paths to Domain Admins) saniyeler içinde tespit edilebilir.
2. PowerView ve PowerShell Scriptleri İle Derinlemesine Sorgulama
PowerSploit modülünün bir parçası olan PowerView.ps1, Active Directory nesnelerini detaylıca analiz etmek için kullanılan en güçlü PowerShell araçlarından biridir.
# PowerView modülünün bellek üzerine yüklenmesi
Import-Module .\PowerView.ps1
# Etki alanındaki tüm Domain Admin üyelerinin listelenmesi
Get-NetGroupMember -GroupName "Domain Admins"
# Şifresi hiç değişmeyen veya süresi dolmayan kullanıcı hesaplarının tespiti
Get-NetUser -Unconstrained | Select-Object samaccountname, useraccountcontrol
# Etki alanındaki tüm SPN (Service Principal Name) tanımlı servis hesaplarının tespiti
Get-NetUser -SPN | Select-Object samaccountname, serviceprincipalname
3. SMB ve RPC Üzerinden Açık Paylaşım Keşfi
Ağdaki tüm sunucularda açık olan SMB paylaşımları (özellikle SYSVOL ve NETLOGON klasörleri) taranır. Eski Group Policy yapılandırmalarından kalan ve içerisinde düz metin şifre barındıran Groups.xml (GPP - Group Policy Preferences) dosyaları araştırılır.
CrackMapExec veya NetExec aracı kullanılarak ağdaki tüm makinelere hızlıca erişim tespiti yapılır:
# Tüm iç ağda SMB servisinin tespiti ve imzalama (signing) durumunun kontrolü
netexec smb 192.168.1.0/24 --gen-relay-list relay_targets.txt
Aşama 2: İlk Erişim Aşamaları ve Ağ Zehirleme Saldırıları (Initial Access & Poisoning)
İç ağ sızma testinin başında elinde hiçbir geçerli kullanıcı adı ve şifre bulunmayan sızma testi uzmanı, ağ protokollerinin varsayılan zayıflıklarından yararlanarak ilk kimlik bilgisini (Credential) elde etmeyi hedefler.
LLMNR, NBT-NS ve mDNS Zehirleme (Poisoning) Saldırıları
Windows işletim sistemleri, bir dosya paylaşımına veya sunucu adına erişmeye çalışırken öncelikle DNS sunucusuna başvurur. Eğer DNS sunucusu bu ismi çözemezse (örneğin kullanıcı bir ağ sürücüsünün adını yanlış yazdıysa: \\muhasebe_paylasim yerine \\muhasebe_paylasım), Windows otomatik olarak yerel ağda yayın yapan LLMNR (Link-Local Multicast Name Resolution) ve NBT-NS (NetBIOS Name Service) protokollerini kullanır.
Saldırgan (veya pentester), ağa Responder aracını dahil ederek bu multicast/broadcast yayınlarını dinler. İstemciye "Aradığın sunucu benim, kimliğini doğrula" yanıtı verilerek istemcinin NTLMv1 veya NTLMv2 hash bilgisi ele geçirilir.
# Responder aracı ile ağ dinleme ve zehirleme modunun başlatılması
sudo responder -I eth0 -dwv
Bir kullanıcı yanlış bir ağ adresine tıkladığında, Responder aracı araya girer ve kullanıcının NTLMv2 hash'ini yakalar. Yakalanan bu hash bilgisi, Hashcat aracı kullanılarak çevrimdışı (offline) ortamlarda parola listeleriyle veya GPU gücüyle kırılmaya çalışılır:
# Yakalanan NTLMv2 hash bilgisinin Hashcat ile kırılması (Mode 5600)
hashcat -m 5600 ntlmv2_hashes.txt /usr/share/wordlists/rockyou.txt -r rules/best64.rule
IPv6 DNS Takeover (mitm6) ve NTLM Relay Mekanizmaları
Günümüz kurumsal ağlarında IPv4 yapılandırmaları son derece sıkı yönetilse de, ağ ekipmanlarının ve Windows istemcilerin çoğunda IPv6 protokolü varsayılan olarak açık bırakılmakta fakat yapılandırılmamaktadır.
mitm6 aracı, ağ üzerinde bir IPv6 DHCP sunucusu gibi davranarak istemcilere kendisini ikincil DNS sunucusu olarak tanıtır. Windows istemciler IPv6 DNS sunucularına IPv4 DNS sunucularından daha yüksek öncelik verdiği için, istemcinin yaptığı tüm DNS sorguları sızma testi uzmanının makinesinden geçmeye başlar.
# mitm6 aracı ile IPv6 üzerinden DNS ele geçirme
sudo mitm6 -d kurumsal.local
Bu aşamada elde edilen kimlik doğrulama istekleri, ntlmrelayx aracı yardımıyla imzalama zorunluluğu (SMB Signing) bulunmayan Domain Controller veya üye sunuculara iletilir (Relay edilir). Eğer LDAP imzalama zorunlu kılınmamışsa, saldırgan Active Directory veritabanında doğrudan yeni bir Domain User hesabı oluşturabilir veya var olan bir hesabı yetkilendirebilir.
# ntlmrelayx ile LDAP servisine relay yaparak yeni kullanıcı ekleme
python3 ntlmrelayx.py -t ldaps://dc01.kurumsal.local --escaped-user-add 'PentestUser' --control-panel
Aşama 3: Kerberos ve NTLM Kimlik Doğrulama Saldırıları
Active Directory ekosistemi, kimlik doğrulama süreçlerinde temel olarak Kerberos ve NTLM protokollerine dayanır. Bu protokollerin mantıksal çalışma prensiplerindeki esneklikler, kerberoasting ve as-rep roasting saldırıları gibi en popüler offensive güvenlik tekniklerine zemin hazırlar.
1. Kerberoasting Saldırısı
Kerberoasting, Active Directory sızma testlerinde sıradan bir Domain User hesabından doğrudan Domain Admin yetkisine sıçramayı sağlayan son derece tehlikeli bir tekniktir. Saldırı, Kerberos protokolünün çalışma mimarisindeki şu kurala dayanır: Ağdaki her geçerli kullanıcı, Service Principal Name (SPN) kaydı bulunan herhangi bir servis hesabı için Kerberos TGS (Ticket Granting Service) bileti talep edebilir.
Kerberos TGS bileti, hedef servis hesabının NTLM hash'i (parolası) ile şifrelenmiştir. Sızma testi uzmanı, aldığı TGS biletini belleğe kaydeder ve bu bileti çevrimdışı ortamda kendi bilgisayarında kırmaya çalışır.
Kerberoasting Saldırı Akışı
- Pentester (Düşük Yetkili Kullanıcı) -> DC'ye SPN İsteği Gönderir.
- Domain Controller (KDC) -> Şifrelenmiş TGS Biletini Kullanıcıya Teslim Eder.
- Pentester -> TGS Biletini RAM'den Dışarı Aktarır (Dump).
- Offline Ortam -> Hashcat/John ile Servis Hesabı Parolası Kırılır.
Impacket Araç Kümesi İle Kerberoasting Uygulaması
Sızma testi uzmanı, Impacket kütüphanesinde yer alan GetUserSPNs.py betiğini kullanarak SPN kaydı olan hesapları tespit eder ve TGS biletlerini çeker:
# Etki alanındaki SPN kayıtlı servis hesaplarının TGS biletlerinin çekilmesi
GetUserSPNs.py kurumsal.local/ahmet.yilmaz:'Sirket2024!' -dc-ip 192.168.1.10 -request -outputfile kerberoast_hashes.txt
Elde edilen TGS biletleri Hashcat ile kırılmaya başlanır:
# Kerberos 5 TGS biletlerinin Hashcat ile kırılması (Mode 13100)
hashcat -m 13100 kerberoast_hashes.txt /usr/share/wordlists/rockyou.txt --force
Eğer Kerberoast edilen servis hesabı (örneğin SQL Server veya IIS hizmetini çalıştıran hesap) yanlışlıkla Domain Admins grubuna dahil edildiyse veya yüksek yetkilere sahipse, parola kırıldığı anda etki alanının tam kontrolü ele geçirilmiş olur.
2. AS-REP Roasting Saldırısı
AS-REP Roasting, Kerberos ön kimlik doğrulama (Pre-Authentication) mekanizması kapatılmış kullanıcı hesaplarını hedef alır. Normal şartlarda Kerberos protokolü, bir kullanıcı TGT (Ticket Granting Ticket) istemeden önce kullanıcının parolasını bildiğini kanıtlamasını (Pre-Auth) ister.
Ancak bazı eski uygulamalar veya uyumluluk gereksinimleri nedeniyle belirli kullanıcılarda "Do not require Kerberos preauthentication" ayarı etkinleştirilmiş olabilir. Sızma testi uzmanı, bu özelliğin açık olduğu hesaplar için hiçbir parola girmeden Doğrudan AS-REP (Authentication Server Response) bileti talep edebilir.
# Pre-Auth zorunluluğu olmayan kullanıcıların tespiti ve AS-REP biletlerinin alınması
GetNPUsers.py kurumsal.local/ -no-pass -usersfile users.txt -dc-ip 192.168.1.10 -format hashcat -outputfile asrep_hashes.txt
Dönen AS-REP bileti, kullanıcının parolası ile şifrelendiği için çevrimdışı ortamda kırma işlemine tabi tutulur:
# AS-REP Roasting hashlerinin Hashcat ile kırılması (Mode 18200)
hashcat -m 18200 asrep_hashes.txt /usr/share/wordlists/rockyou.txt
3. NTLM Relay ve SMB Signing Açıkları
NTLM kimlik doğrulama protokolü, yapısı gereği "Challenge-Response" mekanizmasıyla çalışır. Eğer sunucularda SMB Signing (SMB İmzalama) politikası zorunlu kılınmamışsa (Require SMB Signing = Disabled), saldırgan bir istemciden elde ettiği NTLM kimlik doğrulama yanıtını başka bir sunucuya ileterek o sunucuda hedef kullanıcının yetkileriyle komut çalıştırabilir.
CrackMapExec / NetExec ile ağdaki SMB imzalama durumu taranır:
# SMB Signing durumu 'False' olan sunucuların tespiti
netexec smb 192.168.1.0/24 --gen-relay-list targets_no_signing.txt
Elde edilen hedef listesine ntlmrelayx.py üzerinden NTLM oturumları iletilerek sunucularda komut çalıştırılır (SOCKS proxy oluşturulur veya Cobalt Strike/Metasploit Agent'ı düşürülür).
Aşama 4: Yerel ve Etki Alanı Düzeyinde Yetki Yükseltme (Privilege Escalation)
İç ağda bir istemci makine ele geçirildikten sonra, sızma testi uzmanının önündeki engel istemcideki sınırlandırılmış kullanıcı yetkileridir. Amaç, öncelikle ilgili istemcide yerel yönetici (SYSTEM veya Local Administrator) olmak, ardından Active Directory düzeyinde yetki yükseltmektir.
Yerel Yetki Yükseltme (Local Privilege Escalation)
Bir Windows istemci üzerinde yetki yükseltmek için kullanılan en yaygın teknikler şunlardır:
- Token Impersonation (SeImpersonatePrivilege / SeAssignPrimaryTokenPrivilege): Servis hesaplarında (IIS, MSSQL vb.) sıklıkla bulunan bu yetkiler,
JuicyPotatoNG,RoguePotato,PrintSpooferveyaEclipserPotatoaraçları kullanılarakNT AUTHORITY\SYSTEMseviyesine yükseltilebilir. - Unquoted Service Paths (Tırnak İçine Alınmamış Servis Yolları): Boşluk içeren ve tırnak işareti kullanılmadan tanımlanan servis yolları, aradaki dizinlere zararlı
.exedosyası koyularak kötüye kullanılır. - Yama Yönetimi Eksiklikleri (Kernel Exploits): İşletim sistemi çekirdeğindeki güncellenmemiş zafiyetler (örneğin CVE-2021-36934 HiveNightmare, CVE-2023-21768 Ancillary Function Driver) sömürülerek doğrudan SYSTEM yetkisi alınır.
Active Directory Düzeyinde İzin Hataları (ACL / ACE Abuse)
Active Directory, veritabanındaki her nesne (kullanıcı, grup, bilgisayar, GPO) için Access Control List (ACL) ve bu listenin alt elemanları olan Access Control Entries (ACE) yapısını kullanır. Yanlış yapılandırılmış izinler, düşük yetkili bir kullanıcının yüksek yetkili bir grubu veya Domain Admin hesabını kontrol etmesine olanak tanır.
En Tehlikeli Active Directory İzin Türleri ve Sömürü Senaryoları
| İzin / Hak Türü (ACE) | Açıklama | Sömürü / Saldırı Senaryosu (Abuse Vector) |
|---|---|---|
| GenericAll | Hedef nesne üzerinde tam denetim (Full Control) hakkı verir. | Pentester, hedef kullanıcının parolasını sıfırlayabilir, hedef grubu değiştirebilir veya nesneyi silebilir. |
| GenericWrite | Hedef nesnenin özniteliklerini (Attributes) değiştirme hakkı verir. | Hedef kullanıcının scriptPath özniteliği değiştirilerek oturum açtığında zararlı kod çalıştırılması sağlanır. |
| WriteDacl | Hedef nesnenin ACL yapısını ve izinlerini değiştirme hakkı verir. | Pentester, nesneye kendi hesabı için GenericAll hakkı ekleyerek nesnenin tam kontrolünü ele geçirir. |
| WriteOwner | Hedef nesnenin sahibini (Owner) değiştirme hakkı verir. | Nesnenin sahibi saldırgan yapılarak tüm izinler yeniden tanımlanır. |
| ForceChangePassword | Hedef kullanıcının mevcut parolasını bilmeden yeni şifre atama hakkı verir. | Hedef kullanıcı hesabının şifresi doğrudan değiştirilerek oturum açılır. |
| AllExtendedRights | Hedef nesne üzerindeki tüm genişletilmiş hakları kapsar. | ForceChangePassword veya User-Force-Change-Password yetkilerini içerdiği için şifre sıfırlanabilir. |
BloodHound arayüzünde WriteDacl veya GenericAll tespiti yapıldıktan sonra, BloodyAD veya PowerView aracı kullanılarak hedef kullanıcı grubuna sızma testi uzmanının hesabı eklenir:
# BloodyAD aracı ile hedef gruba kullanıcı ekleme (GenericAll veya WriteDacl hakkı kullanılarak)
bloodyAD -u 'ahmet.yilmaz' -p 'Sirket2024!' -d kurumsal.local --host 192.168.1.10 add groupMember "Domain Admins" "ahmet.yilmaz"
Aşama 5: Yatayda İlerleme ve Kimlik Bilgisi Avcılığı (Lateral Movement)
Ağdaki bir istemci veya sunucuda yerel yönetici (Local Admin) yetkisi elde edildikten sonra, hedef ağdaki diğer kritik sunuculara (Veritabanları, İnsan Kaynakları sunucuları, Yedekleme sunucuları ve Domain Controller) sıçrama yapılması gerekir. Bu işleme Lateral Movement (Yatayda İlerleme) adı verilir.
Bellekten Kimlik Bilgisi Elde Etme (LSAS Dump & Pass-the-Hash)
Windows üzerinde oturum açan her kullanıcının kimlik bilgileri, işletim sisteminin güvenlik mekanizması olan lsass.exe (Local Security Authority Subsystem Service) sürecinin belleğinde saklanır. Yerel yönetici yetkisi elde eden bir sızma testi uzmanı, bu bellek alanını dışarı aktararak (dump) kullanıcıların düz metin (plaintext) parolalarını veya NTLM hash değerlerini okuyabilir.
Mimikatz ve LSASS Dump Teknikleri
# Mimikatz ile bellekten NTLM hash ve düz metin parola çekimi
privilege::debug
sekurlsa::logonpasswords
Modern Windows sistemlerinde LSA Protection ve Credential Guard açık olsa dahi, lsassy veya pypykatz araçları kullanılarak uzaktan belleğe erişim sağlanabilir:
# lsassy aracı ile uzaktan bellekten NTLM hashlerinin toplanması
lsassy -u 'Administrator' -p 'LocalAdminPass123!' 192.168.1.50
Pass-the-Hash (PtH) ve Pass-the-Ticket (PtT) Teknikleri
Elde edilen NTLM Hash değerlerinin düz metin parolasını kırmaya gerek yoktur. Windows NTLM kimlik doğrulama mimarisi, kimlik doğrulaması için parolanın kendisini değil, hash değerini kullandığı için Pass-the-Hash (PtH) tekniği ile doğrudan diğer sunuculara oturum açılabilir.
# wmiexec aracı ile NTLM Hash kullanarak uzak sunucuda Komut Satırı erişimi sağlama
wmiexec.py -hashes :e19fc3622501a182379373976f6859e9 [email protected]
Eğer Kerberos biletleri (.kirbi veya .ccache dosyaları) elde edilmişse, Pass-the-Ticket (PtT) tekniği ile bilet doğrudan mevcut oturuma yüklenerek yetkilendirme sağlanır.
Uzak Yönetim Protokollerinin Kötüye Kullanımı
Saldırganlar ve sızma testi uzmanları, ağda iz bırakmamak veya güvenlik duvarı kurallarını aşmak için Windows'un kendi varsayılan uzak yönetim protokollerini tercih ederler:
| Başlık | Açıklama |
|---|---|
| WMI (Windows Management Instrumentation) | Port 135 ve dinamik RPC portlarını kullanır. İstemci üzerinde iz bırakmadan arka planda komut çalıştırır. |
| WinRM (Windows Remote Management) | PowerShell Remoting altyapısıdır (Port 5985 HTTP, Port 5986 HTTPS). Tam etkileşimli kabuk erişimi sunar. |
| PsExec / SMBExec | SMB servisi (Port 445) üzerinden hedef sistemde geçici bir Windows Servisi oluşturarak NT AUTHORITY\SYSTEM yetkisinde kod yürütür. |
Aşama 6: Domain Controller Ele Geçirme ve Kalıcılık Sağlama (Domain Dominance)
Sızma testinin zirve noktası, etki alanının kalbi olan Domain Controller (DC) sunucusunun ve veritabanının (NTDS.dit) tam denetiminin ele geçirilmesidir. Domain Controller düştüğünde, ağdaki tüm kullanıcıların ve sistemlerin kontrolü sızma testi ekibine geçer.
DCSync Saldırısı: Fiziksel Dosya Erişimi Olmadan Veritabanını Klonlama
DCSync, bir saldırganın Domain Controller sunucusuna fiziksel veya RDP ile bağlanmasına gerek kalmadan, kendisini ağdaki ikincil bir Domain Controller gibi tanıtarak Active Directory veritabanındaki tüm parola hash'lerini talep etmesidir.
Bu saldırı, Directory Replication Service Remote Protocol (MS-DRSR) üzerinden gerçekleşir. Bu işlemi gerçekleştirebilmek için kullanıcının şu iki özel yetkiye sahip olması yeterlidir:
DS-Replication-Get-ChangesDS-Replication-Get-Changes-All
# Impacket secretsdump ile DCSync saldırısı gerçekleştirip tüm kullanıcı hashlerinin çekilmesi
secretsdump.py kurumsal.local/ahmet.admin:'AdminPass123!'@dc01.kurumsal.local
DCSync başarılı olduğunda, etki alanındaki en kritik hesap olan krbtgt hesabı dahil tüm Domain Admin'lerin NTLM hash değerleri elde edilir.
DCSYNC SALDIRI METODOLOJİSİ
- Pentester -> DC'ye MS-DRSR Protokolü Üzerinden Çoğaltma (Replication) İsteği Atar.
- Domain Controller -> Yetkiyi Kontrol Eder (DS-Replication-Get-Changes).
- DC -> krbtgt ve Tüm Kullanıcıların NTLM Hash'lerini Pentester'a Gönderir.
Kalıcılık ve Gelişmiş Bilet Saldırıları (Golden & Silver Ticket)
1. Golden Ticket (Altın Bilet) Saldırısı
Kerberos mimarisinde TGT biletlerini imzalayan ve şifreleyen anahtar krbtgt hesabının NTLM hash bilgisidir. Bir sızma testi uzmanı krbtgt hesabının hash'ini elde ettiğinde, süresi ve yetkileri tamamen kendisi tarafından belirlenen sahte Kerberos TGT biletleri (Golden Ticket) üretebilir.
Golden Ticket ile saldırgan, Active Directory üzerinde var olmayan bir kullanıcı adı oluştursa dahi, kendisini Domain Admins veya Enterprise Admins grubunda göstererek sistemlerde dilediği gibi oturum açabilir. krbtgt parolası sırf bu nedenle 2 kez üst üste değiştirilmediği sürece Golden Ticket geçerliliğini korur.
# Mimikatz ile Golden Ticket üretimi ve oturuma yüklenmesi
kerberos::golden /domain:kurumsal.local /sid:S-1-5-21-382901238-120392019-32103921 /krbtgt:b3d2a84f3e29a1038a83720a2e190392 /user:GölgeAdmin /id:500 /ptc
2. Silver Ticket (Gümüş Bilet) Saldırısı
Golden Ticket tüm etki alanını hedef alırken, Silver Ticket belirli bir servisi (örneğin CIFS, MSSQL, HTTP, LDAP) hedef alır. İlgili servis hesabının NTLM hash'i kullanılarak üretilir. Silver Ticket üretilirken Domain Controller ile hiçbir iletişim kurulmaz; doğrudan hedef sunucuya gidildiği için DC üzerindeki log mekanizmalarını atlatır.
3. Active Directory Certificate Services (AD CS) Zafiyetleri (ESC1 - ESC8)
Son yıllarda Active Directory ortamlarında en sık karşılaşılan yetki yükseltme ve kalıcılık vektörlerinden biri AD CS (Active Directory Sertifika Hizmetleri) açıklandır.
Sertifika şablonlarındaki (Certificate Templates) yanlış yapılandırmalar (örneğin ENROLLEE_SUPPLIES_SUBJECT ayarının açık olması - ESC1), düşük yetkili bir kullanıcının Domain Admin adına sertifika talep etmesine olanak tanır. Elde edilen .pfx sertifikası ile PKINIT (Public Key Cryptography for Initial Authentication) kullanılarak Kerberos üzerinden TGT alınır ve saniyeler içinde Domain Admin olunur.
# Certipy aracı ile AD CS zafiyetlerinin tespiti (ESC1, ESC2, ESC3 vb.)
certipy find -u '[email protected]' -p 'Sirket2024!' -dc-ip 192.168.1.10 -vulnerable
Sık Karşılaşılan Active Directory Güvenlik Zafiyetleri ve Sıkılaştırma (Hardening) Önerileri
Yapılan yüzlerce domain controller pentest ve iç ağ güvenlik testi sonucunda elde edilen veriler, kurumsal altyapılardaki güvenlik açıklarının belirli ana başlıklar altında yoğunlaştığını göstermektedir.
Aşağıdaki tabloda en sık karşılaşılan Active Directory zafiyetleri, risk seviyeleri, kök nedenleri ve çözüm önerileri özetlenmiştir:
| Zafiyet / Risk Kategorisi | Risk Seviyesi | Kök Neden | Sıkılaştırma (Hardening) Çözüm Önerisi |
|---|---|---|---|
| LLMNR / NBT-NS / mDNS Yayınları | Yüksek | Eski Windows sürümleriyle geriye dönük uyumluluk. | Group Policy (GPO) üzerinden LLMNR ve NBT-NS protokolleri tüm ağda tamamen kapatılmalıdır. |
| SMB Signing (İmzalama) Kapalı Olması | Kritik | Uzak sunucularda varsayılan SMB imzalama ayarlarının yapılandırılmaması. | GPO üzerinden tüm sunucu ve istemcilerde Microsoft network server: Digitally sign communications (always) etkinleştirilmelidir. |
| Zayıf ve Süresi Dolmayan SPN Parolaları | Kritik | Kerberoasting saldırılarına açık kullanıcı tabanlı servis hesapları. | Servis hesapları Group Managed Service Accounts (gMSA) mimarisine taşınmalı veya karmaşık 128+ karakterli parolalar atanmalıdır. |
| LDAP Signing ve Channel Binding Eksikliği | Yüksek | LDAP trafiğinin şifrelenmemesi ve NTLM Relay saldırılarına açık olması. | Domain Controller sunucularında LDAP Signing ve LDAP Channel Binding zorunlu kılınmalı (LDAPS - Port 636 kullanımı). |
| Aşırı Yetkili İzin Listeleri (Over-privileged ACLs) | Kritik | Hatalı yetki devirleri (Delegation) ve geçmişten kalan izinler. | BloodHound ile düzenli ACL analizi yapılmalı; GenericAll, WriteDacl, WriteOwner gibi tehlikeli izinler kaldırılmalıdır. |
| Pre-Auth Kapalı Hesaplar (AS-REP Roasting) | Yüksek | Eski uygulama uyumlulukları için Kerberos ön doğrulamasının kapatılması. | Tüm hesaplarda Do not require Kerberos preauthentication seçeneği kaldırılmalıdır. |
| Yerel Administrator Parola Tekrarı | Kritik | Tüm istemcilerde aynı yerel yönetici parolasının kullanılması. | Microsoft LAPS (Local Administrator Password Solution) kurularak her bilgisayarın yerel parolası benzersiz hale getirilmelidir. |
| AD CS Zafiyetli Sertifika Şablonları (ESC1-ESC8) | Kritik | Sertifika şablonlarında istemcinin SAN (Subject Alternative Name) belirtmesine izin verilmesi. | Zafiyetli sertifika şablonları yayından kaldırılmalı veya ENROLLEE_SUPPLIES_SUBJECT yetkisi iptal edilmelidir. |
Active Directory Güvenliğini Sağlamak İçin Sıkılaştırma (Hardening) Rehberi
Bir Active Directory ortamını siber saldırılara karşı dirençli hale getirmek, sadece güvenlik duvarı kurmakla sağlanamaz. Bütüncül bir active directory hardening (sıkılaştırma) stratejisi uygulanmalıdır.
1. Tiered Administration Model (Katmanlı Yönetim Mimarisi)
Yönetimsel hesapların çalınmasını engellemek için Microsoft tarafından önerilen Katmanlı Yönetim Mimarisi (Enterprise Access Model) kurulmalıdır:
| Başlık | Açıklama |
|---|---|
| Tier 0 (Kimlik Katmanı) | Domain Controller'lar, PKI (AD CS) sunucuları, Identity yönetim sistemleri ve bu sistemleri yöneten Domain Admin hesapları yer alır. |
| Tier 1 (Sunucu Katmanı) | Kurumsal uygulama sunucuları, veritabanları, sanallaştırma hostları ve bu sunucuları yöneten yetkili hesaplar yer alır. |
| Tier 2 (Kullanıcı Katmanı) | Son kullanıcı bilgisayarları, laptoplar, yazıcılar ve bu cihazları yöneten Helpdesk hesapları yer alır. |
Sıkılaştırma Altın Kuralı: Tier 0 yetkisine sahip bir Domain Admin hesabı, hiçbir koşulda Tier 1 veya Tier 2 seviyesindeki bir bilgisayarda (örneğin bir çalışan bilgisayarında) oturum açmamalıdır. Aksi takdirde bellekte kalan NTLM/Kerberos bilgileri yatayda ilerleyen saldırganlarca ele geçirilir.
2. Protected Users Grubu ve Credential Guard Entegrasyonu
Windows Server 2012 R2 ile hayatımıza giren Protected Users özel güvenlik grubu, kritik hesapların güvenliğini artırmak için mutlaka aktif edilmelidir. Protected Users grubuna eklenen hesaplar için:
- NTLM kimlik doğrulaması tamamen engellenir (Sadece Kerberos kullanılır).
- Kerberos DES ve RC4 şifreleme türleri kapatılır (Sadece AES zorunlu kılınır).
- Credential Delegation (CredSSP) engellenir.
- Kerberos TGT bilet süreleri sınırlandırılır ve bellekte önbelleklenmez.
Ayrıca Windows istemcilerde Credential Guard (Virtualization-based Security - VBS) etkinleştirilerek lsass.exe sürecinin belleği sanallaştırma tabanlı olarak izolasyona alınmalıdır.
3. krbtgt Parolasının Çift Aşamalı Sıfırlanması
Golden Ticket saldırılarına karşı alınabilecek en etkili önlem, krbtgt hesabının parolasını periyodik olarak sıfırlamaktır.
Kerberos mimarisi gereği önceki TGS biletlerinin aniden kesintiye uğramaması ve sistemlerin aksamaması için krbtgt şifresi 24 saat arayla 2 kez değiştirilmelidir. Microsoft tarafından sağlanan Reset-KrbTgtKey.ps1 PowerShell betiği bu işlem için güvenle kullanılabilir.
4. LAPS (Local Administrator Password Solution) Kurulumu
İç ağdaki tüm istemci ve sunucuların yerel Administrator parolasını merkezileştiren ve her makine için rastgele, karmaşık şifreler üreten LAPS altyapısı kurulmalıdır. LAPS, her bilgisayarın yerel parolasını Active Directory üzerindeki gizli bir öznitelikte (Attribute) saklar ve belirlediğiniz periyotlarda (örneğin 30 günde bir) otomatik değiştirir.
5. Gelişmiş Loglama, SIEM ve Olay Günlüğü İzleme (Auditing)
Active Directory üzerindeki şüpheli hareketlerin tespiti için Domain Controller sunucularında gelişmiş denetim politikaları (Advanced Audit Policy Configuration) aktif edilmeli ve loglar anlık olarak bir SIEM (Security Information and Event Management) veya SOC ekibine aktarılmalıdır.
Takip edilmesi gereken kritik Event ID (Olay Kimlikleri) listesi:
| Başlık | Açıklama |
|---|---|
| Event ID 4624 | Başarılı oturum açma detayları (Logon Type 3: Ağ oturumu, Logon Type 10: RDP). |
| Event ID 4625 | Başarısız oturum açma denemeleri (Bruteforce ve Password Spraying tespiti). |
| Event ID 4768 | Kerberos TGT bilet talebi (AS-REP Roasting tespiti). |
| Event ID 4769 | Kerberos Service Ticket (TGS) talebi (Kerberoasting tespiti). |
| Event ID 4662 | Anormal AD nesne erişimleri (DCSync saldırısı tespiti). |
| Event ID 4720 | Yeni bir kullanıcı hesabı oluşturulması. |
| Event ID 4728 / 4732 / 4756 | Yüksek yetkili gruplara (Domain Admins vb.) yeni bir üye eklenmesi. |
Kurumsal şirketlerin dijital varlıklarını koruma mücadelesinde Active Directory, savunmanın en kritik cephesidir. Karmaşık mimarisi, yıllar içinde biriken hatalı yapılandırmalar ve sürekli gelişen hücum teknikleri, Active Directory ortamlarını siber saldırganların bir numaralı hedefi haline getirmektedir.
Bir siber saldırganın ağınıza sızması durumunda Domain Controller sunucularınızı ne kadar sürede ele geçirebileceğini önceden tespit etmek, telafisi imkansız maddi ve itibar kayıplarının önüne geçer.
DrDisk Lab, kıdemli siber güvenlik uzmanları ve offensive güvenlik kadrosuyla kurumsal şirketlerin iç ağ güvenliklerini, Active Directory mimarilerini ve Domain Controller yapılarını uluslararası sızma testi standartlarında denetlemektedir.
DRDiskLab Active Directory Sızma Testi Hizmeti ile:
- İç ağınızdaki gizli yetki yükseltme yolları (BloodHound Graph analizi ile) haritalandırılır.
- Kerberos, NTLM ve LDAP protokol zafiyetleriniz detaylıca tespit edilir.
- Gerçek bir hacker bakış açısıyla simülasyon yapılarak sistemlerinizin direnci ölçülür.
- Test sonucunda hem üst yönetime özel özet hem de teknik ekiplere özel çözüm adım odaklı, yerli ve uluslararası standartlara uygun raporlama sunulur.
Şirketinizin Active Directory ve iç ağ altyapısını siber tehditlere karşı tam koruma altına almak, sızma testi süreçlerini başlatmak ve profesyonel destek almak için ile iletişime geçebilirsiniz.
İlgili hizmetler: sızma testi · siber güvenlik hizmetleri
Son güncelleme:























