AD CA Security Operations yazımda sizlere Certification Authority konusunda alınması gereken bazı güvenlik önlemlerinden bahsedeceğim. Önceki yazılarımızda sizlere PKI Hiyerarşisinden bahsettik. PKI ortamı daha güvenli nasıl yapılabilir , Tier Model CA ortamına nasıl uygulanmaktadır, Auditler nasıl açılmaktadır gibi derin bir anlatım sunacağım.
PKI Yapısında Offline Root Authority
Öncelikle yapılması gereken Root CA’ının offline ortama alınmasıdır. Root CA’nın domainde olmasına gerek yoktur. Workgroup’da bir sunucuda yapılandırılmalıdır. Root CA PKI ortamının en kritik bileşinedir. Kendisi altında oluşturulan tüm alt CA ların bir güven kaynağıdır. Eğer Root CA Private Key ele geçirilirse saldırgan tüm PKI ele geçirmiş olur. Private key en önemli parça haline gelmektedir. Bu sebepten dolayı korunması gerekir.
Root CA günlük olarak sertifika isteklerine cevap vermek zorunda değildir. Bu yapıda Subordinate CA’lar devreye girecektir. Root CA Sub CA ları imzalamaktadır. O zaman ROOT CA güvene almak gerekmektedir. Bunun için Root CA kurulumundan sonra Subordinate sertifikaları imzaladıktan sonra yapılması önerilenler;
Offline olarak kapatılmalıdır. Bu sayede network’den izole bir ortamdan atak yüzeyini azaltmış olmaktayız. Ayrıca fiziksel sunucu ise daha güvenlikli kabinlerde bulunmalıdır.
Root CA’nın Private Key durumundan bahsettik. Bu key kritik olduğundan korunması gerekir. Çünkü Root CA’nın fiziksel diski çalınabilir , alınan backuplar compromised olabilir veya Sanal Makine kurulumuna bağlı olarak Sanal makine yöneticileri ve Storage adminleri tarafından erişilebilmektedir. Bu sebeplerden dolayı HSM(Hardware Security Module) modülleri kullanılmalıdır.
CA Key’leri çok değişmezler o yüzden , her gün backup almaya gerek yoktur. Backup alınarak kurcalamaya dayanaklı bölümlerde saklanması ve sınırlı erişim verilmesi gerekir.
Offline CA Sunucumuzda Bitlocker veya Başka Full Volume Encryption methodları hard diskleri kriptolamakta fayda vardır.
PKI Yapısında SUBCA
PKI Yapısında SUBCA aslında artık bizim kullanıcılarımıza, sunucularımıza, bilgisayarlarımıza hizmet verecek olan ortamdır. Bu ortamında güvenliği oldukça önemlidir. Bu ortamda kullanıcı yetkileri , auditing , role seperation , sertifika template’leri güvenlik açısından önemli bir rol almaktadır.
İlk olarak Tier Model önlemleri ile hesapları ayrıştırılmış bir ortamda PKI ve PKI Adminleri hangi seviyede olacaktır. Tabiki bu sorunun cevabı net olarak TIER-0 Bölümünde yer alacaktır. PKI ortamını Tier-0 da bulunan diğer ortamlardan farklı düşünmek olamaz. Bu yüzden güvenlik açısında sıkılaştırma gerekmektedir.
Öncelikle Bu makaleyi yazmamdaki en önemli sebepleri sıralayacağımız bölüme geldik. Role Seperation ile başlayalım.
Role Seperation
Öncellikle CA yöneticilerini ayrı ayrı görev tabanlı olarak rollere ayırmakta fayda vardır. Ayrıca bir kişinin aynı anda bir çok CA Rolüne sahip olması’da CA güvenliği açısından bakıldığında tehlikeli bir duruma dönüşmektedir. Bu sebepten Rollerin kapsamı ve kişilerini iyi belirlemekte fayda vardır. Peki hangi tür rollere sahip olunabilir aşağıdan inceleyelim.
Role | Security | Açıklama |
PKI Administrator | Manage CA | CA Admin olarak tüm CA Ortamını yönetebilme yetkisi |
Certificate Manager | Issue and Manage Certificate | Sertifika isteklerinin yönetimi |
Backup Operator | User Rights Assignment: Backup and Restore | Sub CA’ların backuplarını alacak kullanıcı rolüdür. |
Auditor | User Rights Assignment: Manage Auditing and Security Log | Loglama yapacak kullanıcının bulunduğu roldür. |
Bu roller kapsamında gerekli grupları ve konfigürasyonu detaylı olarak uygulayalım.
İlk olarak AD Yapısında OU Yapısını aşağıdaki gibi oluşturdum. CA Sunucu ve hesaplarını Tier0 altında bulundurdum.

Asıl en önemli olan Kısım ise Grup kısmıdır. Bu kısım en çok kullanılacak ve delegasyon yapılacak bölümdür.

Bu aşamadan sonra gerekli kullanıcıları gruplara ekleme yaptık. Bu gruplara yetkileri CA Yapısında dağıtalım.
Default Görünüm

Delegasyon Sonrası Görünüm

Buradaki yetkilendirmeler
PKI-Admins: Manage CA
PKI-Cert-Manager: Issue and Manage Certificates
Domain Admins, Enterprise Admins ve Administrators Gruplarının yetkilerini kaldırdık.
Tekradan CA Console açtığımızda Domain Admins, Enterprise Admins ve Administrators üyelerden herhangi biriyle girsek bile yönetemediğimizi görebiliriz.

CA Seviyesinde delegasyonu yapmış olduk. Şimdi Tier0 yapısının özelliği gereği Domain Admins Grubunun Local Administrator Grubunda olmamalıdır. Local administrator grubunda olacak kişileri limitlemek gerekmektedir. Bunun içinde PKI-Server-Maintenance grubu create edilerek sadece belli kişileri maintenance işlemleri(Backup, Update gibi) için izin verilmelidir. Bu kişilerin Certification Authority üzerinde yetkisi olmamasına dikkat edilmelidir.
Ayrıca Administrator hesabı şifresinin LAPS tarafından yönetimini sağlayarak , guest account disable edilmelidir. Şimdi diğer delegasyon için GPO ayarlarına dönelim.
Local Admin Grubumuzuda belirlemiş olduk. PKI-Server-Maintenance grubu üyeleri CA Sunucusuna girebilecektir.

Backup ve Auditor içinde User Right kısımlarını halledelim.

Güvenlik kısmında daha ‘da detaylandıracağız. Şimdilik bu grupların nasıl yetkilendirileceğini göstermiş olduk.
PKI Ortamında Uygulanacak Güvenlik Policyleri
PKI Ortamında uygulanacak güvenlik policylerine geldiğimizde , Aslında PKI ortamı bizler için Tier 0 ortamda bulunan kritik sunuculardan biridir. Bu sebepten dolayı Microsoft Security Baseline, CIS,STIG gibi sıkılaştırmaların uygulanması gerekmektedir.Member Server’lara uygulanan politikalar tercih edilmelidir.
ESC Ataklara Karşı Yapılacaklar
ESC Ataklar CA ortamların en tehlikeli atak tipleridir. Daha önceki yazılarımızda ESC ataklardan bahsetmiştik. O makaleleri aşağıdaki linklerden takip edebilirsiniz. Tabiki ESC Ataklar sadece bu ikisinden ibaret değildir. Fakat temelleri bu 2 atak tipine bağlıdır ama diğer atakların kontrolleri için burdan bakabilirsiniz. Link
SUBCA’da Audit’lerin açılması
AD CA Security Operations yazımızda diğer bir önemli konu ise CA ortamında auditlerin önemi büyüktür. Bu yüzden default olarak açık olmayan auditlerin açılması gerekmektedir.
- CA Level Audit

GUI’den açılmaktadır veya Certutil -setreg CA\AuditFilter 127 komutu ile de açılmaktadır. Açıldıktan sonra CA Servisine restart gerekmektedir.
- CA Registry Audit
CA üzerinde yapılacak diğer bir ayar ise, Registry üzerinde yapılabilecek ayarların kontrol edilmesidir. Yine GPO veya Local Policy’den yapılacak olan Audit Registry ayarı ile yapılandırılmaktadır.

Ayrıca CertSrv regedit key’de bulunan CA yapılandırma bilgilerinin loglanması sağlanabilir. Configuration altında tüm ayarlar bulunmaktadır. Bu sebepten Configuration dosyasının altı loglanmalıdır.

Sonrasında Buranın altında Authenticated Users’un değişiklikleri loglanmaktadır.

- CA Template Audit
Burada Template’lerde olacak değişikliklerin loglanması için CMD üzerinden
certutil –setreg policy\EditFlags +EDITF_AUDITCERTTEMPLATELOAD
Son olarak bu ayar sonrasında gözükecek eventler Certificate Services loaded a template (Event ID 4898),A Certificate Services template was updated (EventID 4899),Certificate Services template security was updated (EventID 4900)
- OS Audit
İşletim Sistemi bazında zaten Microsoft Security Baseline’lara göre Audit policyler uygulanır , ama ekstra olarak Local veya GPO üzerinden Object Access>>Audit Certification Services logununda açılması gerekmektedir.

Sonuç olarak AD CA Security Operations yazımızda sizlere CA yapısında bazı önemli güvenlik politikaları, loglamaları ve yönetim şekillerini göstermiş olduk diğer yazılarımı aşağıdaki kategorilerden takip edebilirsiniz.