Active Directory Güvenliği: Bölüm-2

Herkese Selamlar. Active Directory Güvenliği serisinin bu bölümünde Active Directory ortamında bulunan Roller, Kullanıcılar ve Gruplar konularından bahsedeceğim. Keyifli okumalar dilerim…
Serinin ilk bölümüne ulaşmak için: Active Directory Güvenliği: Bölüm-1
“Bir sistemin güvenliği sağlanmak isteniyorsa ilk önce o sistemin yapısı, bu yapının nasıl bozulabileceği ve son aşamada ise bu sistemin nasıl korunabileceği öğrenilmelidir.”
Active Directory’de Bulunan Roller
Bir Active Directory ortamında Domain ve Forest bazında gerçekleşen çeşitli işlemlerden (Replikasyon işlemi gibi) sorumlu roller vardır. Flexible Single Master Operations (FSMO) olarak isimlendirilen bu roller tek bir Domain Controller üzerinde tanımlanabileceği gibi her bir rol farklı Domain Controller’lar üzerinde de tanımlanabilir. Bu roller Forest-Based (Forest Tabanlı) ve Domain-Based (Domain Tabanlı) olarak ikiye ayrılır:
Forest-Based (Forest Tabanlı) Roller
- Schema Master: Active Directory ortamında bulunan Schema yapısının yönetimi, güncellenmesi ve replikasyonundan sorumlu Forest tabanlı Domain Controller rolüdür. Forest içerisinde Active Directory Schema’sını oluşturan Nesne Sınıflarını (Object Classes) ve Niteliklerini (Attributes) yönetir. Forest tabanlı olduğu için Schema Master rolünün gerçekleştirdiği değişiklikler Forest içerisinde bulunan tüm domainleri etkiler ve bir Active Directory Forest’ında sadece bir adet Schema Master rolü bulunur.
- Domain Naming Master: Tıpkı Schema Master rolü gibi Domain Naming Master rolü de bir Active Directory Forest’ında sadece bir adet bulunan Forest tabanlı bir Domain Controller rolüdür. Bir Forest’a yeni bir domain eklenmesi, çıkartılması veya mevcut bir domainin isminin değiştirilmesi gibi değişikliklerden sorumlu tek Domain Controller’dır. Bu rol aynı zamanda bir Forest’ta bulunan Nesnelerin (Objects) isimlerinin ve konumlarının kontrolünün yapılmasını sağlar. Mevcut Forest’a yeni bir Nesne (Object) eklenecekse veya mevcut Forest’ta bulunan bir Nesne çıkartılacaksa Domain Naming Master rolünün haberi dahilinde bu işlem gerçekleştirilir.
Domain-Based (Domain Tabanlı) Roller
- RID Master: Bir domain içerisindeki Domain Controller’lardan gelen RID isteklerini karşılamaktan sorumlu tek bir Domain Controller üzerinde bulunan roldür. Domainde yeni bir ID (SID veya GUID)’ye ihtiyaç duyulduğunda bu talep RID Master rolü tarafından karşılanır.
NOT-1: Bir Domain Controller üzerinde bir kullanıcı veya grup gibi bir nesne oluşturulduğunda ilgili nesneye benzersiz bir SID (Security Identifier) ekler. SID şu parametrelerden oluşur:
– Bir domainde oluşturulan tüm SID’ler için aynı olan bir domain SID’si
– Bir domainde oluşturulan her nesne SID’si için benzersiz olan bir RID’si (Relative Identifier)
NOT-2: Bir domainde bulunan her Domain Controller’a kendi içerisinde oluşturulan nesnelere ataması için verilen bir RID Pool (RID Havuzu)’u tahsis edilir. Bir Domain Controller’a tahsis edilen RID havuzu belirli bir eşiğin altına düştüğünde ilgili Domain Controller kendi Domain RID Master’ına ek RID’ler için istek gönderir. Ardından Domain RID Master henüz domainde tahsis edilmemiş RID havuzundaki RID’leri alarak istekte bulunan Domain Controller’ın havuzuna iletir.
NOT-3: Bir Active Directory ortamında her domainde bir RID Master rolü bulunur.
NOT-4: RID Master rolü bir Active Directory ortamında bulunan bir nesnenin bir domainden başka bir domaine taşınmasından da sorumludur.
ObjectSID
- PDC Emulator: Bir domaindeki diğer Domain Controller’lar tarafından yapılan parola değişikliklerinin kopyasını bulundurmak (şifre replikasyonu), belirli bir Domain Controller’da hatalı parola girişi nedeniyle authentication (kimlik doğrulama) hataları oluştuğunda ilgili kullanıcıya parola hatası mesajı bildirilmeden önce hataları almak ve hesap kilitleme (account lockout) gibi işlerden sorumlu roldür. Ayrıca bu rol bir kurum içerisindeki sistemlerin zaman senkronizasyonunu sağlamak için gerekli bir roldür.
NOT-5: Windows, Kerberos için gerekli olan W32Time (Windows Time) Zaman Hizmeti (Time Service)’ni kullanır. Bir kurumda bulunan tüm Windows bilgisayarlar ortak bir zaman kullanırlar. Bu Zaman Hizmeti’nin amacı, Windows Zaman Hizmeti’nin sistemdeki yetkiyi kontrol eden hiyerarşik bir ilişki kullanmasını sağlamaktır.
NOT-6: Bir domainde bulunan PDC Emulator rolü o domain için yetkilidir. Bir Forest’ın kökündeki (root) PDC Emulator’ü kurum bazında o kurum için yetkili hale gelir. PDC Emulator’leri sistem üzerindeki zamanı harici bir kaynaktan toplayacak şekilde yapılandırılmalıdır. PDC Emulator rolüne sahip tüm roller toplanan zaman verilerinin seçiminde domain hiyerarşini takip ederler.
- Infrastructure Master: Bir Active Directory ortamında bulunan nesnelerin domainler veya Forest’lar arası Referans bilgilerini işlemekten sorumlu roldür. Bu rol aynı zamanda sorumlu olduğu domaindeki nesneleri aynı Forest’taki diğer domainlerdeki nesnelerle karşılaştırır ve bunların Global Catalog sunucularıyla senkronize olmasını sağlar ve domainler arasında nesnelerin SID (Security Identifier)’ını ve DN (Distinguished Name)’ini güncellemekten ve bir Forest’ta bulunan domainlerdeki GUID’leri, SID’leri ve DN’leri düzenlemekten sorumludur. Ayrıca Infrastructure Master rolü sorumlu olduğu domaindeki nesneleri düzenli olarak kontrol eder ve artık sistemde mevcut olmayan nesneleri (Stale Objects) buradan kaldırır.
NOT-7: Referans, Active Directory mimarisinde nesneler arasındaki ilişkileri ve bunlar arasındaki bağlantıları gösteren kavramdır.
NOT-8: GUID, SID, RID ve DN kavramları bir sonraki bölümde LDAP protokolünden bahsedilirken daha detaylı açıklanacaktır.
Bir Forest yapısında bulunan FSMO rollerinin hangi Domain Controller sunucularında yer adlığını görüntülemek için cmd veya Powershell üzerinden aşağıdaki komut kullanılabilir:
“netdom query fsmo”
FSMO Rolleri
Active Directory’de Bulunan Kullanıcılar (Users)
Bir Active Directory ortamında Güvenlik Sorumluları (Security Principals) olarak bilinen nesnelerden birisidir. Active Directory yapısında bulunan kimlik doğrulama protokolleri aracığıyla sistemlere giriş yapabilir ve aynı zamanda sistemlerdeki kaynakları kullanma konusunda kendilerine yetki tanımlanabilir.
Security Principal (Güvenlik Sorumlusu): Güvenlik sorumlusu, ağdaki kaynaklar üzerinde işlem yapabilen bir obje olarak tanımlanabilir.
Active Directory mimarisinde kullanıcılar ikiye ayrılır:
- People: Bir kurumda ağ erişimine ihtiyaç duyan kullanıcılar buraya aittirler.
- Service: Active Directory ortamlarında bulunan IIS veya MSSQL gibi servisler tarafından kullanılması için kullanıcılar tanımlanabilir. Her bir servisin çalışabilmesi için bir kullanıcı gerekir. Fakat servis kullanıcıları diğerlerinden biraz farklıdır. Servis kullanıcıları yalnızca kendi spesifik servisini çalıştırması için gerekli yetkilere sahiptir.
Bir Active Directory ortamında Kullanıcılar (Users) temel olarak dörde ayrılır:
- Domain Admin: Domain Admin kullanıcıları, domain seviyesinde yetkilere sahip hesaplardır. Yani bir Active Directory ortamı üzerinde geniş yetkilere sahip olan kişilerdir ve bir Active Directory ortamına kullanıcı ekleme veya çıkarma, bilgisayar ekleme veya çıkarma, grup politikalarını (Group Policy) düzenleme gibi işlemleri gerçekleştirebilir.
- Service Accounts: Service Hesapları, domain ile etkileşim içerisinde olan hizmetler (Services) ve uygulamalar (Applications) tarafından kullanılır. Servis hesapları genel olarak ağ içerisindeki kaynaklara erişim gerektiren web sunucuları, veri tabanı sunucuları veya diğer uygulamalar için özel olarak tanımlanmış izinlere sahiptirler.
- Local Administrator: Belirli bir bilgisayar üzerinde yönetici (admin) yetkilerine sahip bir hesaba sahip olan kullanıcılara Local Administrator adı verilir. Bu kullanıcın sahip olduğu yetkiler yalnızca yerel bir makinede geçerlidir, tüm domain üzerinde etki gösteremez. Local Administrator yetkilerine sahip olan bir kullanıcı çeşitli yazılımlar yükleme, sistem ayarlarını düzenleme, belirli bir bilgisayardaki kullanıcı hesaplarını yönetme gibi işlemleri gerçekleştirebilir.
- Domain Users: Bir domaine giriş yapmak için bireyler tarafından kullanılan kullanıcı hesaplarıdır ve sahip oldukları izinler dahilinde ağdaki kaynaklara erişim sağlarlar. Genel olarak bir kurumdaki çalışanlara atanan hesaplardır. Active Directory ortamına eklenen her bir kullanıcı Domain User olarak tanımlanır. Ayrıca Domain User’lar yetkileri dahilinde domainde bulunan başka bir bilgisayarda da oturum açabilirler.

Active Directory Users and Computers
Active Directory’de Bulunan Gruplar (Groups)
Active Directory mimarisinde Gruplar, kullanıcıları ve nesneleri belirli izinlere sahip olacak şekilde organize ederek gruplaştırmayı sağlayan nesnelerdir. Bu işlem ağ yönetimini kolaylaştırarak yöneticilere avantaj sağlar.
Bir Active Directory ortamında temel olarak iki tip grup bulunur:
1- Distribution Groups: Active Directory ortamında Microsoft Exchange Server veya Office 365 gibi mail uygulamaları kullanarak mail dağıtımını sağlayan gruplardır.
2- Security Groups: Active Directory ortamında kullanıcıların izinlerini belirleyen gruplardır. Security Groups da Security Principles olarak kabul edilir. Böylece ağdaki kaynaklar üzerinde ayrıcalıklara sahip olabilirler. Aşağıda bazı önemli Security Group’larından bahsedilmiştir:
- Domain Controllers: Domainde bulunan tüm Domain Controller’ları içerir.
- Domain Computers: Domainde bulunan tüm bilgisayarları (Worksatations) ve sunucuları içerir.
- Domain Admins: Bu grupta bulunan kullanıcılar domain üzerinde admin yetkilerine sahiptir. Domain Controller’lar dahil olmak üzere domainde bulunan herhangi bir bilgisayarı yönetme yetkisine sahiptirler.
- Domain Users: Domainde bulunan tüm kullanıcıları içeren gruptur.
- Enteprise Admins: Domain Admin ile aynı yetkilere sahiptir. Aynı zamanda buna ek olarak Forest içinde bulunan tüm domainlerde de tam yetkiye sahip olan gruptur.
- Schema Admins: Yalnızca Forest’taki root domainde bulunan ve Active Directory Schema’sını düzenleyebilen güvenlik grubudur.
- DNS Admins: Ağdaki DNS bilgilerine erişebilen güvenlik grubudur. Bu grup yalnızca DNS sunucusu rolü domaindeki bir Domain Controller’a yüklenmişse mevcut hale gelir.
Diğer Güvenlik Grup (Security Groups)’larını aşağıdaki görselden inceleyebilirsiniz:

Active Directory Security Groups
Security Groups vs Organizational Units (OUs)
Her iki obje de Active Directory ortamı içerisinde kullanıcıları ve bilgisayarları sınıflandırmak amacıyla kullanılır. Fakat bunların bu yapı içerisindeki kullanım amaçları birbirinden farklıdır. OU’lar bir kurumda bulunan belirli rollere bağlı olarak kullanıcı kümelerine ait belirli yapılandırmaları içerir ve kullanıcılara ve bilgisayarlara çeşitli politikaları (Group Policy gibi) uygulamak için daha kullanışlıdır. Bir kullanıcı (User) aynı anda yalnızca tek bir OU’nun üyesi olabilir. Çünkü tek bir kullanıcıya iki farklı politika uygulamaya çalışmak mantıklı bir hareket olmayabilir. Security Groups ise Active Directory ortamında bulunan kullanıcılar ve bilgisayarların buradaki kaynaklar üzerinde işlem yapabilmeleri için gerekli izinlerin bu objelere verilebilmesi için kullanılır. Bir kullanıcı birden fazla kaynağa erişim izni vermek için birden çok grubun parçası olabilir.
NOT-9: Windows işletim sistemine sahip olan bilgisayarlarda arka tarafta çalışan birçok bilgisayar hesabı bulunur. Bu hesaplardan en önemlileri Yerel Hesap (Local Accounts)’lardır. Bu hesaplar yalnızca o bilgisayara özgü ve başka herhangi bir bilgisayarda aynı yetkilere sahip olmayan hesaplardır. Yani Active Directory yapısında olduğu gibi merkezi bir yapıdan ve bu yapıdaki kimlik doğrulama süreçlerinden bağımsız olarak yer alan birimlerdir.
– Standart User: Bilgisayar üzerinde temel işlemleri gerçekleştirebilen fakat sistem ayarlarını değiştiremeyen hesaptır.
– Administrator: Bilgisayar üzerinde tam yetkiye sahip olan hesaptır. Bilgisayarda bulunan klasörlere, dizinlere, hizmetlere (Services), ve diğer kaynaklara erişebilir. Sahip olduğu bu yüksek yetkilerden dolayı gerekli olmadıkça kullanılması tercih edilmemelidir.
– Guest: Bu hesapla oturum açan kişiler bilgisayarda sınırlı bir alana erişebilirler. Bir kullanıcıya Guest (Misafir) hesabı verilerek kişisel dosyalara, ayarlara veya bilgisayarda yüklü olan uygulamalara erişimini kısıtlayarak bilgisayarı kullanma imkanı sağlanabilir. Guest hesabı da tıpkı Administrator hesabı gibi gerekli olmadıkça kullanılmamalıdır.
– SYSTEM: Bilgisayar üzerinde en yüksek yetkiye sahip olan SYSTEM hesabı, bir bilgisayarın çalışabilmesi için gerekli olan tüm işlemlerin gerçekleştirildiği yerel hesaptır ve işletim sistemi seviyesinde çalışır. Sistem aktif olduğu sürece bu hesap da çalışmaya devam eder. Kullanıcıların bu hesaba doğrudan erişimleri yoktur ve bu hesap ile oturum açamazlar.
– Service Accounts (Hizmet Hesapları): Hizmet Hesapları ikiye ayrılır:
1- Network Service Accounts: Bu hesaplar, bir bilgisayarın ağdaki ağdaki diğer bilgisayarlarla iletişim kurmasını sağlamaktan sorumludur.
2- Local Service Accounts: Bu hesaplar ise bilgisayarın arka planda çalışan hizmetlerini yönetmesi için kullanılır.
NOT-10: Windows’ta çalışan Process’lerin hangi kullanıcı yetkileriyle çalıştırıldığını görüntülemek için cmd veya powershell üzerinden aşağıdaki komutu çalıştırabilirsiniz:
“tasklist /V”

Windows Local Accounts
Active Directory’de bulunan Roller, Kullanıcılar ve Gruplar’ın neler olduklarından ve bunların görevlerinden bahsetmiş olduğum Active Directory Güvenliği serisinin ikinci bölümünü bitirmiş oluyoruz. Vaktinizi ayırıp okuduğunuz için teşekkür ederim. Umarım yazı sizler için faydalı olmuştur. Eksik veya yanlış gördüğünüz bir kısım olursa yorum kısmında belirtebilirsiniz. Bir sonraki bölümde görüşmek üzere, iyi günler dilerim.
KAYNAKÇA
- MDISEC Network Hacker Serisi
- https://learn.microsoft.com/en-us/troubleshoot/windows-server/active-directory/fsmo-roles
- https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups
- https://blog.netwrix.com/fsmo-roles#:~:text=The%205%20FSMO%20Active%20Directory,RID)%20Master%20(domain%20level)
- https://www.youtube.com/watch?v=NvoTOHZEZIE