Microsoft’un son nesil işletim sistemi Windows Server 2012 R2 ile active directory domain servislerinde gelen güvenlik yeniliklerinden biri de “Protected Users” güvenlik grubudur. Bu grup sayesinde üye olan hesaplar için güvensiz kimlik doğrulama protokolleri, zayıf kriptolama algoritmaları ve hassas kullanıcı hesaplarına delegasyon atamaları sınırlandırılarak active directory domain ortamının güvenliği artırılmıştır. Windows Server 2012 R2 ile tanıştığımız bu grubu detaylarıyla bu makalemizde inceliyoruz.
“Protected Users” grubu kurumsal yapı içerisindeki hesap bilgilerini etkin biçimde koruma altına almak ve yönetmek için tasarlanmış özel amaçlı bir güvenlik grubudur. Özellikle domain ortamına oturum açma ile başlayan kimlik doğrulama sürecinde hesap bilgilerine sıkılaştırılmış özel bir koruma sağlar. Bu gruba üye olan hesaplar otomatik olarak koruma altına alınırlar. “Protected Users” grubuna üye olan hesap kısıtlı ya da sınırlı kullanımı olan ve varsayılan olarak proaktif biçimde güvenliği sağlanmış demektir. Normal hesaplar gibi gelişigüzel her bilgisayarda ya da ortamda kullanılamaz. Bu kısıtlardan ya da korumadan etkilenmemenin tek yolu hesabı bu gruptan çıkarmaktır.
ÖNEMLİ UYARI : Servis hesapları ve bilgisayar hesaplarını Protected Users grubuna üye yapmamalısınız. Bu grup bilgisayar üzerinde yerel koruma sağlamaz, zira şifre ve sertifika bilgisi yerel olarak her zaman ulaşılabilir bir durumdadır. Gerek servis hesaplarında gerekse de bilgisayar hesaplarında Protected Users grubuna üye yapılmaları durumunda, kimlik doğrulama süreci “kullanıcı adı ya da şifre yanlış” şeklinde bir hata mesajı ile başarısızlıkla sonuçlanır.
Sadece domain ortamlarında mevcut olan bu global güvenlik grubu sayesinde Windows Server 2012 R2 ve Windows 8.1 işletim sistemlerinin çalıştığı bilgisayar ya da aygıtlarda kullanılan kullanıcı hesaplarına engellenemez ya da devre dışı bırakılamaz bir koruma sağlanır.
ÖNEMLİ NOT : Protected Users grubunun kullanılabilmesi için active directory schema versiyonunun Windows Server 2012 R2 seviyesi olan “versiyon 69” yükseltilmesi gereken. Ayrıca PDC Emulator rolüne sahip olan domain controller sunucusunun işletim sisteminin de Windows Server 2012 R2 versiyonunda olması zorunludur.
Protected Users grubu ile iki katmanda koruma sağlanır:
İstemci-katmanında koruma : Windows 8.1 ya da üzeri bir işletim sisteminde çalışan bir aygıttan ya da Windows Server 2012 R2 ya da üzeri bir sunucu işletim sisteminden oturum açma esnasında tetiklenir.
Domain Controller katmanında koruma : İstemci katmanında korumaya ilave olarak Windows Server 2012 R2 domain fonksiyonel seviyesinde çalışan domain controller sunucular için de domain controller seviyesinde koruma gerçekleştirir.
ÖNEMLİ NOT: Windows 8.1 istemci işletim sisteminde çalışan aygıtlardan ya da Windows Server 2012 R2 öncesi sunuculardan oturum açan kullanıcı hesapları için Protected Users grubu ile herhangi bir koruma sağlanmaz.
Protected Users grubunun karakteristik özellikleri:
Protected Users grubunun üyelerinin NTLM, Digest Authentication veya CredSSP ile kimlik doğrulama sürecinden geçmeleri desteklenmez. Bir diğer deyişle NTLM, Digest Authentication veya CredSSP bu grubun üyesi olan hesaplar için kullanılamaz. Windows 8.1 çalışan bir aygıt üzerinde şifreler önbelleklenmez, bundan dolayı bu kimlik doğrulama protokollerinden birini kullanan aygıtlar domain ortamına oturum açmak istediklerinde başarısızlıkla sonuçlanacak ve oturum açamayacaklardır.
Bu grubun üyesi olan hesaplar için Kerberos protokolü ile DES ya da RC4 gibi zayıf kriptolama tipleri kullanılamaz. Yani domain ortamınızın en azından AES kriptolama standardına göre yapılandırılması gerekir.
Bu grubun üyesi olan hesaplar için Kerberos delegasyonu da desteklenmez. Bundan dolayı Kerberos delegasyonunu kullanarak diğer sistemlere yapılan eski bağlantılar da başarısızlıkla sonuçlanacaktır.
Kerberos Ticket Granting Tickets (TGTs) için dört saat olan varsayılan yaşam süresi, Authentication Policy ve Silo kuralları ile Active Directory Administrative Center (dsac.exe) konsolu kullanılarak yapılandırılabilir. Yani dört saat sonunda bu gruba üye olan hesaplar tekrar kimlik doğrulama sürecine tabi tutulurlar.
Aşağıdaki tabloda Protected Users grubunun özelliklerini görmektesiniz:
Özellik |
Değer |
SID ya da RID numarası |
S-1-5-21- <domain SID> – 525 |
Tipi |
Global Security grup |
Varsayılan Konumu |
CN=Users,dc=<domain>,dc=<uzantı> |
Varsayılan Üyeler |
YOK |
Varsayılan Üye Olduğu Gruplar |
YOK |
ADMINSHOLDER vasıtasıyla korunuyor mu? |
HAYIR |
Varsayılan konumundan taşımak güvenli mi? |
HAYIR |
Bu grubun yönetimini delegasyonla diğer kullanıcılara vermek güvenli mi? |
HAYIR |
Varsayılan kullanıcı hakları |
YOK |
Protected Users Grubuna İlişkin Olay Kayıtları
Protected Users grubuna ilişkin olarak olayları çözümlemek amaçlı iki adet operasyonel olay kaydı kategorisi bulunmaktadır. Bu kayıtlar Event Viewer konsolunda Applications and Services Logs\Microsoft\Windows\Microsoft \Authentication altından erişilebilir ve varsayılan durumda kapalıdır.
Protected Users Grubunun Yapılandırılması:
Protected Users grubu istemci-tarafında koruma sağlayan bir özellik olup, kullanılabilmesi için belli ortam gereksinimlerinin sağlanması gerekir:
Protected Users grubunun oluşması için Active Directory Schema versiyonunun Windows Server 2012 R2’ye genişletilerek versiyon 69 yükseltilmesi gerekir.
Protected Users grubunun diğer domain controller sunuculara çoğaltılması için PDC Emulator FSMO rolüne sahip sunucunun Windows Server 2012 R2 işletim sisteminde çalışması gerekir.
Hesapların bulunduğu domain ortamındaki tüm domain controller sunucularına Protected Users global security grubunun çoğaltılmış olması gerekir.
Bu koruma sadece Windows 8.1 aygıtlarından ya da Windows Server 2012 R2 sunucu sistemlerinden Windows Server 2012 R2 domain controller üzerinden kimlik doğrulaması yapılan oturum açılışlarında uygulanabilir.
Domain Controller sunucular için koruma yapılabilmesi için domain fonksiyonel seviyesinin Windows Server 2012 R2 olması gerekir.
NOT : Protected Users grubu domain fonksiyonel seviyesi Windows Server 2012 R2 altında olan domain yapılarında da uygulanabilir. Böyle bir durumda öncelikle PDC Emulator rolü Windows Server 2012 R2 sunucuya atanıp, Protected Users grubunun tüm diğer domain controller sunuculara çoğaltılması tamamlandıktan sonra, istenirse domain fonksiyonel seviyesi tekrar alt versiyonlara indirgenebilir.
UYGULAMA ADIMLARI:
Protected Users grubunun işleyişini test etmek için aşağıdaki şekilde görüldüğü gibi FullAdmin isimli bir kullanıcı hesabı oluşturuyoruz.
FullAdmin kullanıcı hesabını Domain Admins, Enterprise Admins, Schema Admins gibi yüksek seviyede yetkiye sahip yönetimsel gruplara üye yapıyoruz.
Şu an için Protected Users grubuna henüz üye yapmıyoruz. FullAdmin kullanıcısı ile Windows 8.1 ile çalışan bir bilgisayardan domain ortamına oturum açıyoruz.
Oturum açan kullanıcımıza ait kullanıcı bilgileri, grup üyelikleri ve atanan hakları listeliyoruz.
Yine oturum açan FullAdmin hesabına atanan Kerberos TGT ticket içeriğini görüntülüyoruz. Gördüğünüz gibi 10 saatlik yaşam ömrü olan TGT atanmış.
Yine klist.exe aracı ile KDC (Key Distribution Center) tarafından FullAdmin hesabına atanan Kerberos ticket listesine baktığımızda da sağlıklı bir biçimde alındığını ve Domain seviyesindeki GPO tanımından gelen 10 saatlik ömrü olan ticket verildiğini kontrol ediyoruz.
İstemci bilgisayarımızın Event Viewer konsolunda Security günlükleri içerisinde oturum açma esnasındaki kimlik doğrulama protokolünün Kerberos olduğu ve yüklenen kimlik doğrulama paketinin de yine Kerberos paketi olduğunu kontrol ediyoruz. Bunun için Security kategorisinde “Filter Current Log” seçeneği ile gelen ekranda XML sekmesine geçip aşağıdaki XML sorgusunu yapıştırıyoruz. Siz isterseniz Security kategorisinde oluşan olay kayıtları içerisinden elle arayarak da ulaşabilirsiniz. Aşağıdaki sorgu işimizi biraz daha hızlandırıp sadece istediğimiz olayları görüntüleyecektir.
Aşağıdaki şekilde görüldüğü gibi Kerberos kimlik doğrulama paketine ilişkin kayıtları görüyorsunuz.
<QueryList> <Query Id=”0″ Path=”Security”> <Select Path=”Security”>*[EventData[Data[@Name=”AuthenticationPackageName”] = “Kerberos”] and System[(EventID=4624)]]</Select> |
Bu aşamada hesabımız henüz Protected Users grubuna üye olmadığı için herhangi bir kısıtlama ya da sınırlandırma söz konusu değil. Normal kullandığımız kullanıcı hesabı davranışlarının aynısını gerçekleştiren bir hesap olarak işlev gösteriyor:
İstediği versiyonda çalışan işletim sistemine RDP vb. bağlantı gerçekleştirebilir.
Hem Kerberos hem de NTLM ile oturum açabilir. (Bunu tüm DC’ler üzerindeki KDC servisini kapatarak test edebilirsiniz. Kerberos servisine ulaşamayınca NTLM seviyesine düşerek kimlik doğrulamasını bununla yapacaktır.)
Protected Users grubuna üye yapıldığında kısıtlanan kriptografi algoritmaları için şu anda herhangi bir sınırlandırma bulunmamaktadır.
Şimdi Protected Users grubuna üye yapma sürecine başlayalım.
Öncelikle domain fonksiyonel seviyemizin Windows Server 2012 R2 seviyesinde olduğunu kontrol ediyoruz.
PDC Emulator FSMO rolüne sahip domain controller sunucumuz Windows Server 2012 R2 işletim sisteminde çalışıyor.
FullAdmin hesabımızı Protected Users grubuna üye yaptık.
Şimdi Windows 8.1 istemci bilgisayarımızdan tekrar oturum açıyoruz. Aşağıdaki şekilde görüldüğü gibi Kerberos ticket’ın yaşam süresi 4 saate düşmüş oldu. Bu Protected Users grubu üyeleri için varsayılan değer.
İstemci üzerindeki Security olay kayıtlarından oturum açma esnasında yüklenen paketin Negotiate seviyesine çıktığını görüyoruz. Negotiate en güçlü, güvenilir kimlik doğrulama protolünün kullanımını sağlar.
Yukarıdaki başlıklarda Protected Users grubuna üye olan kullanıcılar için Kerberos dışında NTLM kimlik doğrulama protokolü desteklenmediğini belirtmiştik. Ben demo ortamımda çalışan domain controller sunucularım üzerinde Kerberos kimlik doğrulama sürecini gerçekleştiren KDC(Key Distribution Center) servisini kapatıyorum. (Bunu tüm domain controller sunucularımda yapıyorum. Aksi halde kullanıcımız diğer domain controller’ın KDC servisinden servis almaya devam edecektir.
Bu işlem sonrası tekrar Windows 8.1 istemcimden oturum açmaya çalıştığımda aslında beklenen KDC servisinden servis alamadığı için kimlik doğrulamanın NTLM seviyesine düşerek gerçekleşmesidir. Fakat kullanıcı hesabımı Protected Users grubuna üye yaptığımdan dolayı aşağıdaki hata mesajını alarak oturum açma sürecimizin başarısızlıkla sonuçlandığını görüyorsunuz.
Kullanıcı hesabını Protected Users grubundan çıkartırsanız bu durumda NTLM kimlik doğrulaması ile oturum açabildiğini göreceksiniz. Bu durumda yine klist ile kerberos bilgilerini listelemek istediğimizde herhangi bir kerberos ticket atanmadığını görüyor olacaksınız.
Yine bu süreçle ilgili olay kaydı için de istemci üzerindeki Event Viewer konsolunda Security kategorisinde Filter Current Log seçeneği kullanılarak aşağıdaki XML sorgu ile kimlik doğrulama paketinin NTLM olduğunu kontrol edebilirsiniz.
<QueryList> <Query Id=”0″ Path=”Security”> <Select Path=”Security”>*[EventData[Data[@Name=”AuthenticationPackageName”] = “NTLM”] and System[(EventID=4624)]]</Select> </Query> </QueryList> |
Ağdan Erişim Testleri:
Protected Users grubuna üye kullanıcımızla ağ üzerindeki kaynaklara IP Adresini kullanarak ağ yolu tanımlaması ile (UNC Path) ya da net use komutu ile erişmek istediğimizde de aşağıda görüldüğü gibi başarısızlıkla sonuçlandığını göreceksiniz.
Bunun nedeni IP ile ağ bağlantılarına erişimde NTLM kimlik doğrulamasını kullanıyor olmasından kaynaklanıyor. NTLM’de Protected Users grubu üyeleri için kullanılamadığından erişim başarısızlıkla sonuçlanıyor. IP yerine netbios adi ya da host adını kullandığınızda ise sorunsuz bağlanıldığını göreceksiniz.
ÖZETLE :
Microsoft’un son nesil işletim sistemi Windows Server 2012 R2 ile active directory domain servislerinde gelen güvenlik yeniliklerinden biri olan “Protected Users” güvenlik grubunu kullanarak güvensiz kimlik doğrulama protokolleri, zayıf kriptolama algoritmaları ve hassas kullanıcı hesaplarına delegasyon atamalarının sınırlandırılmasını detaylarıyla bu makalemizde inceledik. Bir başka makalemizde görüşmek dileğiyle hoşçakalın.