Active Directory Penetrasyon Testleri #1— AD Penetrasyon Lab Ortamı Kurulumu #1

Eşref Erol
Three Arrows Security
7 min readFeb 8, 2019

--

Merhabalar bu blog dizisinde AD’yi iki farklı bakış açısıyla tanımaya çalışacağız. Örneğin sistem güvenliğini arttırmak için güvenlik politikaları eklemeye çalışan bir yönetici ve bu politikaları aşmaya çalışan, yine bu politikaları kullanarak güvenliği aksatmak isteyen bir saldırgan şeklinde bunu örnekleyebiliriz.

Yanlış yapılmış yapılandırmalar, yetersiz iyileştirme prosedürleri ve zaman içinde yöneticileri gözleyerek öğrendiğim başka birçok hata gibi AD’nin ödün vermesine sebep olan birçok şey var.

Bu blog dizisi ADDC kurulumu ve saldırıları için biraz uzun bir dizi olabilir. Bunun sebebi ise Active Directory kavramlarını anlamak ve temeli oturtmak amacını gütmemizdir. Lab ortamımızı kurduktan sonra işlerin nasıl yürüdüğünü anlamaya başladığımızda ve farklı saldırıları test ettiğimizde işler sizin için daha da ilginçleşecektir.

Merhaba Windows!

Active Directory Nedir?

Active Directory, bir kuruluşun kullanıcıları, bilgisayarları, sunucuları, kaynakları vb. ile ilgili tüm verileri içeren, merkezi bir depo görevi gören ve sistem yöneticileri için yönetimi kolaylaştıran, Microsoft’a ait Directory hizmetidir. Ağdaki herhangi bir yerden erişilebilen tek bir yönetim arayüzüdür. AD kullanarak iş istasyonları(workstations) güncellenebilir, düzenlenebilir ve korunabilir.

Ve tüm öğelerin bu koleksiyonu bir domain altında toplanır. Domainler güvenlik ve dizin replikasyonu için Active Directory içindeki mantıksal bölümleri temsil eder. Bir domain her zaman benzersiz bir adla adlandırılır ve uygun bir domain adı yapısına sahiptir.

Bir contiguous namespace’i paylaşan bir grup AD domainine AD Tree denir. Tree’deki nesneler her zaman hiyerarşiyi takip eder ve tree yapılarının toplamına Forest denir. Bir domain kendisine ek başka bir domain olmasa bile her zaman bir Tree yapısının öğesidir. Forest bir veya daha fazla Tree’den oluşur. Bir Tree’den farklı olarak, Forest yapıları contiguous ve non-contiguous namespacelerden oluşabilir.

Active Directory Domain Controller(ADDC)

ADDC’ler, domainde oturum açtıklarında kullanıcı ve bilgisayar hesaplarının kimliğini doğrulayan servisi içinde barındırır. Bu nedenle tüm kullanıcıların ve bilgisayarların ağda oturum açarken AD DS (Active Directory Domain Services) domain denetleyicilerine bağlanması gerekir bu yüzden AD DS ağınızdaki kullanıcı ve bilgisayar hesaplarını yapılandırıp/yönetmek için kullanacağınız birinci yoldur.

AD Veritabanı:

Kullanıcı kimliği, bilgisayarlar, gruplar, hizmetler ve kaynaklar gibi verilerle ilgili bilgiler ntds.dit adlı tek bir dosyadan oluşan Active Directory veritabanında saklanır. Varsayılan olarak “%SYSTEMROOT%\NTDS” klasöründe depolanır.

LDAP(Lightweight Directory Access Protocol)

Hafifletilmiş Dizin Erişim Protokolü anlamına gelmektedir. Bu protokolün işi ağdakilerin izini sürmektir.

AD İle Entegre DNS

DNS, Active Directory’nin çalışması için önemlidir. Domainde hangi servislerin kullanılabilir olduğunu ve kimin ne sağladığını belirlemek için AD’nin gerektirdiği birkaç DNS kaydı vardır. AD’de DNS’i yapılandırdığınız zaman bu kayıtlar otomatik olarak yönetilir.

Kerberos

Kerberos, domain boyunca birden fazla bilgisayara oturum açmak için bir kullanıcı adı ve parola kullanmamıza izin veren servistir. Temel olarak domain boyunca Single Sign-On (Tekli Oturum Açma) işlemini gerçekleştirir.

Grup Politikaları

Grup politikası, makine düzeyinde olan kullanıcı, güvenlik ve ağ politikalarını tanımlamak için kullanılır. Yöneticiler, grup politikalarını merkezi bir konumdan tüm domaine veya birkaç bilgisayar/kullanıcıya uygulayabilir.

Belli başlı AD kavramlarını açıkladığımıza göre artık lab ortamı kurulumumuza başlayalım.

ADDC Lab Kurulumu

Bu lab kurulumu için sınırlı kaynaklar nedeniyle küçük çaplı bir ortam kuracağım ancak kuracağımız bu ortam AD saldırılarını canlandırmamız için yeterli olacak.

  • Domain Denetleyicisi(Windows Server 2012 R2)

Üretim ortamında ADC(Ek Domain Denetleyicisi), RODC(Salt Okunur Domain Denetleyicisi), CDC(Alt Domain Denetleyicisi) gibi birçok domain denetleyicisi bulunmaktadır.

  • İstemci Makine(Windows 7, Windows 10)
  • SQL Sunucu, Dosya Sunucusu, FTP Sunucusu, IIS Sunucusu, Proxy Sunucusu, Antivirüs Sunucusu vb. gibi üye sunucuları.(Member Servers)

Laboratuvarı kurmanın iki yolu mevcut:

  • Grafik kullanıcı arayüzü yolu
  • Komut satırı arayüzü yolu

Administrator Yolu:

Hadi ilkiyle başlayalım. Oracle VirtualBox’ı buradan indirin. 180 günlük değerlendirme sürümü olan Server 2012 R2 ISO dosyasını buradan test edebilirsiniz.

Domain Denetleyicisi İçin VM Oluşturma

Donanım Gereksinimleri:

  • 1 vCPU
  • 2GB RAM
  • 25–30 GB Depolama Alanı

VirtualBox’da “New Virtual Machine” seçeneğini seçin ve gerekli alanları doldurup “Create” butonuna tıklayın. Unutmayın, makineleriniz yalnızca ana bilgisayar sanal ağının bir parçası olacak ve gerçek ortamdan ayrılacak fakat birbirleriyle iletişim kurabilecekler. Bunun ayarını yapmak için aşağıdaki yönergeleri izleyin:

  • Yeni oluşturduğunuz VM’e sağ tıklayın ve “Settings”i seçin.
  • Network’e gidin ve “Host-Only Network” seçeneğini seçin.

Internal Network’u yalnızca DC ve Proxy sunucusu internete erişebilecek şekilde ayarlıyorum. Böylece diğer istemciler proxy server üzerinden internete erişecekler ve biz loglarını görebileceğiz.

Daha sonrasında internet erişimi için başka bir NAT adaptörü de kuracağım. Şimdilik sadece bir adaptör ayarlayalım. Ayarlamaları yaptığımıza göre “Run” diyerek ISO dosyamızı çalıştıralım. Kurulum normal bir şekilde Windows kurar gibi ilerleyecek. “Install Now” diyelim ve disk bölümü seçip kuruluma başlayalım. Kurulum tamamlandığında, makineyi açın ve statik bir IP adresi atayın. Atadığınız IP adresi ADDC’nin ve DNS’in adresi olacak.

Bir IP Adresi Atayın:

Makineye IP atamak için “Network Properties” seçeneğine gidin. “Network and Share Center”ı(Ağ ve Paylaşım Merkezi) açmak için run(çalıştır) çubuğuna ncpa.cpl yazın ve makineye static bir IP adresi atayın.

Bilgisayar İsmini Değiştirin

Yöneticilerin hangi sunucunun DC, Dosya Sunucusu, DHCP sunucusu vb olduğunu hatırlayabilmesi için anlamlı bir ad gerekir. “System Properties” sekmesine gidin ve bilgisayar adını değiştirin. System Properties’i açmak ve bilgisayar adını değiştirmek için run’a sysdm.cpl yazın.

Değişiklikleri kaydetmek için makineyi yeniden başlatın.

ADDS Rolünü Yükleme:

“Server Manager”e gidin ve “Add roles and features” seçeneğini seçin.

İlk seçenek olan “Role-based or feature-based installation” seçeneğini seçin.

Rolleri seçme adımına ulaşana kadar “Next Next Next” yapın. “Select Server Roles” seçeneğine gelince “Active Directory Domain Services” seçeneğini seçin ve açılan pencerede “Add Features” seçeneğine tıklayın. Next diyin.

Rolleri ve özellikleri yükleyene kadar “Next”e basmaya devam edin. Rolleri yüklemeniz biraz zaman alabilir merak etmeyin.

Sunucuyu Domain Denetleyicisine Yükseltme

Roller ve özellikler yüklendikten sonra “Server Manager”da bir ünlem işareti belirecektir. “Promote this Server to Domain Controller” seçeneğini seçebilmek için ünleme tıklayın.

Yeni Forest Ekleyin

Burada yeni Forest oluşturma seçeneği gösteriliyor. “Add a New Forest” seçeneğine tıklayın ve domain adını girin.

Next’e tıklayın. Sonraki ekranda varsayılanları olduğu gibi bırakın ve bir kurtarma parolası oluşturun. Oluşturacağınız bu parolaya DSRM parolası denir. Bu parola yöneticiye domain ile ilgili bir sorun olması durumunda veya AD veritabanını geri yüklemek/kurtarmak istediğinizde AD veritabanına bir tür arka kapı sağlar.

Sonraki satırlardaki varsayılanları kabul edin. Bazı ön koşulları kontrol edecek ve bazı uyarılar gösterecektir bu uyarılara tamam diyerek devam edin ve “Install”a tıklayın. Şimdi arka planda AD ve DNS kurulumu ve yapılandırması gerçekleşecek, ardından sunucu yeniden başlatılacaktır. Yeniden başlatmanın ardından ADDC’niz hazır olacaktır. Yeniden başlatma gerçekleştiğinde karşınıza bir oturum açma ekranı gelecektir burada yönetici hesabınızı kullanarak giriş yapabilirsiniz ancak şuan hesabınızın Domain Administrator olduğunu ve bilgisayarınızın artık bir Domain denetleyicisi olduğunu unutmayın. Giriş formatınız aşağıda verilmiştir.

Username– scriptdotsh\Administrator
Password– XXXXXXXXX

Komut Satırı:

Sadece 4 komutta, Domain denetleyicinizi ayarlayabilirsiniz. Kısacası bu 4 komut yukarıda GUI ile yaptığımız işin aynısını yapacaktır. PowerShell’i yönetici olarak çalıştırın ve aşağıdaki komutları girin:

AD DS Rolünü Yükleme:

Install-windowsFeature AD-Domain-Services

ADDS RSAT Özelliklerini Yükleme:

Add-windowsfeature RSAT-ADDS

Sunucuyu Domain Denetleyicisine Yükseltme:

Import-Module ADDSDeployment

Not: Bu komut bir çıktı vermeyecektir.

Yeni Forest Eklemek:

Install-ADDSForest

Devam etmek için domain adını ve parolayı girip Yes’i seçin.

Forest kuruluyor

İşlemin tamamlanması ve sistemin yeniden başlatılması birkaç dakika alabilir. Yeniden başlatma gerçekleştiğinde domain denetleyiciniz hazır olacaktır. GUI ‘de gösterdiğime benzer bir şekilde giriş yapabilirsiniz.

Giriş yaptıktan sonra farklı AD araçlarını keşfedebilirsiniz.

Son Söz

Bir sonraki yazıda DHCP, üye sunucular, proxy sunucu, istemci makineler ve kullanıcılar gibi bileşenlerin kurulumlarını yapacağız. Bu aşamadan sonra da yanlış yapılandırmalardan ve DC tabanlı saldırılardan bahsedeceğiz. Beklemede kalın :)

Devam yazılarım:

Active Directory Penetrasyon Testleri #2 — AD Penetrasyon Lab Ortamı Kurulumu #2:
https://link.medium.com/0Kj7MwlnzV
Active Directory Penetrasyon Testleri #3 — Forest Trust: https://link.medium.com/b0yBNo67pV

Orijinal Yazı: https://scriptdotsh.com/index.php/2018/06/09/active-directory-penetration-dojo-setup-of-ad-penetration-lab-part-1/

Çeviri için yazının sahibinden izin alınmıştır. Seri olarak yayınlamaya devam edeceğim. Okuduğunuz için teşekkürler.

--

--

Eşref Erol
Three Arrows Security

Dr. | Editor at @threearrowsec & @h4cktimes | @Parrotsec TR Community