Active Directory Güvenliği İçin 10 Temel Öneri
Günümüzde güvenlik her şirket için önemli bir başlık olmasına karşın güvenlik konseptinde derinlik ne yazık ki temel anlamda firewall, anti virüs, son dönemde DLP gibi ana başlıklardan daha derine inemiyor. Özellikle çok fazla bütçe ve uzman ile kurulan banka ortamlarında bilen yaşanan büyük zafiyetlerin aslında uygulama temelli zafiyetler olduğunu gördükçe güvenlik algısının sadece yüzeysel ürün temelli değil uygulama bazlı yapılması gerektiğini bir kez daha görmüş oluyoruz.
Peki her uygulama için güvenlik sıkılaştırma çalışması yapılabilir mi? Pek çok global üretici için uygulamalarının en iyi güvenlik çözümleri, yapılandırmaları veya birlikte çalışma senaryoları bulunmaktadır, ancak özellikle büyük şirketler için bunları tek tek hayata geçirmek var olan karmaşık yapıyı daha içinden çıkılmaz bir hale sokabileceği gibi bütçe ve zaman açısından yönetimi zordur. Bundan dolayı özellikle zafiyet testleri sonucunda kritik uygulamalar hedef alınır. Ancak küçük şirketler için ne yazık ki zafiyet taramalarının bütçesinin bile bulunması sorun olabiliyor. Madem öyle daha minimal yapılar için neler önerebiliriz?
Tabiki bu işin doğrusu öncelikle bir veya bir den çok uzman ile mevcut yapı için zafiyet testlerinin uygulanması, sonuçlarının değerlendirilmesi, uygulanması ve bu zafiyetlerin kapatıldıktan sonra tekrar bir test yapılmasıdır. Hatta buna ek olarak “security hardening” olarak bilinen ve yine büyük kurumlar tarafından özellikle OS seviyesinde yaptırılan sıkılaştırma çalışması sayesinde testlerde çıkmayan ancak üreticilerin önerdiği en iyi yapılandırmaları gerçekleştirerek güvenlik seviyenizi daha yukarılara çekebilirsiniz.
Bende pek çok müşterime aslında bu noktada herhangi bir ürün almadan yardımcı olmak için sağlık taraması adı altında hizmet sunmaktayım. Bu makaledeki amacım da bu sağlık taraması kapsamında yaptığım çalışmaların bir bölümü olan Active Directory için güvenlik anlamında neleri kontrol etmeniz ve nasıl yapılandırmanız gerektiğini paylaşmaktır. Günün sonunda sağlık taraması sadece 27001, KVKK, güvenlik gibi başlıkları değil aynı zamanda sisteminizin ne kadar sağlıklı çalışıp çalışmadığını ve kritik bulguların olup olmadığını görmeniz için alabileceğiniz bir servis.
Bunu yapan ya da aslında yaptığını iddia eden pek çok araç görebilirsiniz. Ancak birkaç temel rapor ve pasta dilimi görseller ile kritik alt yapılarınız için yorum yapmanız doğru olmayacaktır. Nasıl zafiyet tarama ürünlerinin olmasına karşın Pentest adı altında uzman danışmanlara ücret ödeyip gerçek hayat senaryolarının sisteminiz üzerinde denenmesini sağlıyorsanız yine bir uzmanın sizin yaşayan bu sisteminiz için yorum yapması çok kıymetlidir.
Peki gelelim konumuza, güvenli bir Active Directory için nelere dikkat etmemiz gerekiyor?
1 – Varsayılan Hesapların Kapatılması veya Değiştirilmesi
Öncelikle ne yazık ki hala pek çok sistem yöneticisi Active Directory ile beraber gelen Administrator olarak isimlendirilen varsayılan hesap ile sistemlerini yönetmektedir. Bu pek çok ransomware başta olmak üzere uzak erişim ve sonrasında verilerin şifrelenmesi ile sonuçlanan atakları kolaylaştırmaktadır. Çünkü hala pek çok şirket dış dünyaya RDP açık sistemler barındırmakta ve hele varsayılan kullanıcı ile bu sistemleri yönetiyor ise zaman içerisinde şifre deneme yanılma yolu ile kolaylıkla bu sistemlere sızmak mümkündür. Sadece ransomware değil pek çok hak yükseltme, içeriden gelen ataklarda da varsayılan admin hesapların kullanılması büyük zafiyetlere neden olmaktadır. Bu nedenle ilk olarak varsayılan Administrator hesabının kopyalanarak yeni bir yönetici hesabı oluşturulması ve mevcut yönetici hesabının tüm yetkilerinin alınması gereklidir. Bu sayede örneğin “Hakan” isminde standart bir user olarak görünen ama oysaki “Administrator” hesabının yerine geçen yeni bir yönetici hesabınız olacaktır. Mevcut hesabı bu şekilde kopyalayacak uzmanlığınız yok ise en kötü “rename” yani Administrator yerine “hakan” kullanarak” en azından varsayılan brüte force şifre bulma atakları için öne geçebilirsiniz.
2 – Yönetici Hesapları Ayrıştırılması
Bir diğer sık yaptığımız hata ise tek bir kullanıcı hesabı ile hem kişisel bilgisayarımızı hem Forest/Domain ortamını yönetiyor olmamız. Burada her şirket için farklı çözüm oluşturabileceğimiz gibi en iyi senaryo olarak kendi bilgisayarımız için “hakan”, uzak son kullanıcı bilgisayarlarını yönetmek için “wrk_hakan”, domain ortamındaki sunucuları yönetmek için “srv_hakan” ve Active Directory, Exchange, CA Server gibi kritik alt yapı sunucuları için “ent_hakan” kullanıcı hesaplarını oluşturmanız ve en önemlisi de örneğin srv_hakan kullanıcısının veya buna bağlı grubun üyelerinin herhangi bir son kullanıcı bilgisayarına giriş yapmasına izin vermemeniz gereklidir. Benzer şekilde ent_hakan da DC, Exchange gibi sunucuların dışında herhangi bir sunucuya login olmamalıdır. Ayrıca varsayılan olarak gelen domain admins grubu tüm bilgisayarlarda local admin olduğu için onu da kaldırmanız ve son kullanıcı makineleri, sunucular için ayrı lokal admin grupları oluşturmanız şarttır.
3 – Kritik Grup Üyeliklerinin Kontrolünün Sağlanması
Güvenlik emek ister tabiki gönül ister ki hiç ürün satın almayalım ancak bazı noktalarda temel Audit veya siem ürünleri güvenlik için şart. SIEM belki bu madde için çok lük kalabilir ancak lepide gibi uygun maliyetli bir Audit ürünü ile AD kritik grupların üyelik güncellemelerini mutlaka takip etmeniz gereklidir. Bu sayede olası bir hak yükseltme veya 2. Maddedeki senaryoyu bozan bir yönetici olması halinde bundan mutlaka haberdar olmanız gereklidir.
4 – Lockout Policy
Çok temel bir policy olmasına karşın hala çok büyük yapılarda bile Lockout policy olmadığına sağlık taraması çalışmalarım sırasında karşılaştım. Bunun tabiki yönetimi bir hayli zor olduğu için her müşterinin farklı bir yorumu bulunur ancak tartışmasız en temel Active Directory güvenlik önlemi lockout policy uygulanmasıdır.
5 – Password Policy
Çok temel bir bilgi olduğu ve artık bu konuda çok ciddi farkındalık olduğu için üzerinde çok durmayacağım, ancak burada önemli olan nokta eğer yetkili hesap segmentasyon yapmışsanız tek sorun yöneticinizin sahip olduğu tüm hesaplara aynı şifreyi vermesi olacaktır ki bunu engellemezseniz aslında sizin herhangi bir ürün almadan sağladığınız hak yükseltme koruma özelliğiniz bir anda çöp olabilir.
6 – Eski Kullanıcı ve Makine Hesaplarının Temizlenmesi
Ne yazık ki pek çok sağlık taramasında bu noktanın düzenli olarak yapılmadığını görüyoruz. Banka, Telekom veya global firmalar gibi düzenli denetlenen firmaların dışında ne yazık ki işten ayrılmış kullanıcı hesaplarının hala aktif olarak kaldığını görebiliyoruz. Burada gerek makine gerekse kullanıcı hesaplarının düzenli kontrol edilmesi ve gereksiz olan hesapların önce disable, daha sonra şirket politikasına göre silinmesi güvenliğinizi arttıracak adımlardan birisi olacaktır.
7 – Düzenli Yama Yüklenmesi
Çok geleneksel olacak ama OS seviyesinde çıkan kritik yamalar Active Directory ortamınız için çok büyük risk doğurabilir. Sadece OS seviyesinde değil özellikle son dönemde gördüğümüz CPU zafiyetleri de ne yazık ki çok ciddi güvenlik zafiyetlerine neden olduğu için aslında AD ortamınızı üzerinde barındırdığınız donanımların firmware yüklemelerinden OS yamalarına kadar güncel bir sistem kullanıyor olmanız gerekli. Şimdi yama yüzünden kesinti yaşan müşterilerin “aman hocam bana yama deme” dediğini duyar gibiyim ama yine hep dediğim gibi pilot dağıtım, test yapmadan yapılan her yama hangi sisteme olur ise olsun büyük bir zarar verme potansiyeli taşır. Bu üreticilere göre farklılık göstermek ile beraber bu kötü tecrübeler ne yazık ki sistemlerimizi bilinen zafiyetlere karşı korumasız bırakmamız için bir bahane olamaz. Yama yönetimi aslında başlı başına ayrı bir konu olduğu için bunu da geçiyorum şimdilik.
8 – Çoklu Kimlik Doğrulama
Active Directory gibi sistemlere erişimlerin sınırlanması ve hatta bu tür sistemlere giriş yapabilecek makinelere ise smart card gibi ek güvenlik önlemleri ile girebiliyor olmanız ayarlanmış olması gereklidir. Örneğin bizim en değerli varlıklarımızdan birisi olan mali varlığımıza erişirken nasıl kimse sms veya benzeri ikinci doğrulama mekanizmalarından vazgeçmiyor ise bir şirket için verilerde en değerli varlıklar olduğundan suyun başındaki konumu nedeni ile AD erişimleri mutlaka MFA – 2FA cihazları ile desteklenmelidir.
Bu basit bir örnek
9 – İzleme
Aslında grup değişiklikleri izlenmesi başlığında izleme noktasının öneminden bahsetmiştim, ancak bu çok özel bir izleme örneği olup her şirketin bunu yapması bazen mümkün olmuyor, ancak bu maddeyi gerçekleştiremiyor olsanız dahi genel olarak AD üzerindeki GPO, DNS, AD değişikliklerinden mutlaka haberdar olmanız gerekli, aksi halde bu maddeye kadar yapmış olduğunu pek çok değişiklik kötü amaçlı olarak geriye doğru değiştirilebilir ve bundan haberiniz olmayabilir. Bu konuda Lepide, Netwrix, Manage Engine, Change Auditor gibi pek çok Audit yazılımı kullanabilirsiniz. Tabiki sahip olduğunuz SIEM’ i eğiterek kritik durumlar için yine log üretmesini sağlayarak bu ihtiyacı karşılayabilirsiniz ama benim her zaman tercihim AD, Exchange gibi kritik servisler için özelleşmiş Audit yazılımları almak olacaktır. SIEM olsun bana bir zararı yok hatta tüm logları topluyor süper ama T anında o SIEM den istediğim bilgiyi almak bazen zor bazen imkânsız olabiliyor.
10 – Yedekleme ve Felaket Senaryosu
Evet en iyi güvenlik önlemlerinden biriside tabiki çok sağlam bir yedeğinizin olması. Veya olası bir saldırı, şifre ele geçirme ya da servis kesintisi gibi ataklar için geri dönüş planınızın olmasıdır. Buna sahip iseniz pek çok beklenmedik saldırı için kurtarma senaryonuz hazır olacaktır.
Evet, elimden geldiği kadar basit olarak bir farkındalık makalesi hazırlamaya çalıştım. Tabiki benden 27001 özelinde, KVKK veya temel sağlık taraması alan müşterilerimin sadece Active Directory için 184 noktaya baktığımı biliyorlar, yani bu işin hepsini burada makaleye dökmek ne yazık ki çok ciddi bir zaman alacağı için ben en azından böyle hizmetler veya ürünler alamayan pek çok kobi çapındaki firmalar için yardımcı olmak amacı ile bu bilgilerimi paylaştım. Ancak daha ciddi iş ihtiyaçlarınız ve bütçeniz var ise tabiki benim gibi bir uzmandan böyle profesyonel bir tarama hizmeti ile durum rapor edinmeniz ve sonrasında da ister mevcut ekipleriniz ile, iste danışmanlarınız ile iyileştirme çalışmasını Active Directory gibi kritik tüm sistemler için yapmanızı öneririm.
Makalemde kullandığım birtakım görseller için kaynaklar aşağıdaki gibidir;
https://www.petri.com/wp-content/uploads/sites/3/2016/11/Adaxes-Active-Directory-Cleanup.png
Çok güzel makale
Elinize Sağlık Hakan Hocam
Eline sağlık Hakan hocam.
Teşekkürler.
Teşekkürler.
Hakan hocam eline sağlık çok güzel bilgiler
Hakan hocam döktürmüş ellerine sağlık (:
Tesekkurler
Teşekkürler Hocam.