Malum Exchange server gibi dışarıya açık olan sistemler son yıllarda çok fazla atak alıyor ve biz Exchange yöneticileri ise bir hayli yorulmuş durumdayız. Bu konuda neden hep bu açıklar onprem sistemlerde çıkıyor, office 365 de neden çıkmıyor gibi bazı şüpheler olsa da aslında bunun en temel nedeni bulut ortamlarının sürekli izlenmesi ve bu tür atıklaın görüldüğü anda aksiyon alınmasıdır. Ancak onprem sistemler için bu durum bu kadar kolay değil çünkü bu sistemleri bizler yönettiğimiz için Microsoft’ un bu kadar hızlı müdahele etmesi mümkün değil. Yine onprem sistemler üzerinde yedekleme, anti virüs, anti malware, imza yazılımları, arşiv yazılımları başta pek çok farklı ürün ile çalıştığı için çıkarılacak yamalarda çok hızlı olamayabiliyor. Malum yamalarda sorun olunca yine en çok biz şikayet ediyoruz bu yamalar kontrol edilmeden mi çıkıyor diye. Özetle cloud iyi bir alternatif ancak hala GDPR, KVKK vb nedenlerden ötürü onprem sistemleri kullanan müşteriler için bu savaş devam ediyor.
Peki gelelim konumuza;
Exchange Emergency Mitigation EM servisi nedir
Exchange Emergency Mitigation servisi temel olarak sunucularımıza yönelik olası tehtidleri azaltmak için önlemler alan ve sunucu güvenliğini sağlamaya yardımcı olan bir servistir. Mevcut sunucunuzun durumunu analiz etmek için verileri bulut ortamına gönderen ve içinde bulunduğunuz durum için kullanılabilecek zafiyetlerin etkisini azaltacak tanımlamaları uygular. Yani özetle önce mevcut durumun bir resmini çeker ve bu duruma uygun bir aksiyon alır. Hangi aksiyonları alacağını yazımın ilerleyen bölümünde detaylandırıyor olacağım.
Bu hizmet bir windows hizmeti gibi çalışır. Eylül 2021 ile çıkan CU’ yu yükleyen Exchange 2016 ve 2019 sistemleri için geçerli bir hizmettir. Bu hizmet EDGE rolü için geçerli değildir. Bu yükleme isteğe bağlı olup bunu yüklemek zorunda değilsiniz.
Mitigations
Mitigations, olası bir zafiyetle karşı karşıya kalan sunucuların bu zafiyetten en az şekilde etkilenmesi ya da başka bir deyişler bu zafiyetin etkisini azaltmak için alınan aksiyonlardır. Bunu yaparken EM hizmeti bir sunucu üzerindeki özellikleri veya işlevleri otomatik olarak devre dışı bırakabilir. Şu anda sunulan EM temel olarak 3 tür azaltma uygulayabilir;
IIS URL Rewrite rule mitigation
Bu, bir Exchange sunucusunu tehlikeye atabilecek belirli kötü amaçlı HTTP istekleri kalıplarını engelleyen bir kuraldır.
Exchange service mitigation
Exchange sunucusunda güvenlik açığı bulunan bir hizmeti devre dışı bırakır.
App Pool mitigation
Exchange sunucusundaki güvenlik açığı bulunan bir uygulama havuzunu devre dışı bırakır.
Nasıl Çalışıyor?
Microsoft bir güvenlik tehdidini öğrenirse sorun için bir hafifletici önlem oluşturabilir ve yayınlayabilir. Bu durumda, azaltma, azaltmayı uygulamak için kullanılan yapılandırma ayarlarını içeren imzalı bir XML dosyası olarak OCS’den EM hizmetine gönderilir. (EM, Exchange Emergency Mitigation kısaltmasıdır. OCS ise cloud-based Office Config Service kısaltması olup EM bu servisi veri göndermek, olası güncelleştirmeleri kontrol etmek ve indirmek için kullanır. Yani EM servisinin cloud üzerinde konuştuğu servistir.
EM hizmeti bir exchange sunucusuna yüklendikten sonra her saat başında OCS’ i kontrol eder. Eğer bir güncelleme var ise bunun için XML dosyasını indirir ve sertifika anahtarı kullanarak bu XML’ in gerçekten Microsoft tarafından üretildiği ve değiştirilmediğini doğrular. Doğrulama sonrasında bu zararlının etkisinin azaltılması için gerekli aksiyonu alır. Her bir zafiyet azaltma işlemi yama çıkana kadar geçici bir çözüm olarak sunulur.
Peki bu servis için neler gerekli?
Tabiki Eylül 2021 en güncel CU indirmeniz gerekli. Yani EM servisi ilk olarak Eylül 2021 tarihindeki CU ile sunulmaya başlanmıştır. Ek olarak sunucuda aşağıdaki iki yükleme gereklidir.
Peki benim pek çok müşterimde olduğu gibi Exchange sunucusu internete kapalı ise. Yani dış dünyadan 443 nolu, 25 nolu istekler, bir NLB, WAF ve SMTP GW ile alıyorsunuz ok ama sunucu internete çıkmıyordur. Bu genel bir güvenlik prosedürüdür. Çözüm EM için aşağıdaki adrese 443 nolu portu açmanız gerekli.
officeclient.microsoft.com/*
Eğer proxy kullanıyorsanız aşağıdaki PS ile bunu tanımlamanız gerekli
Set-ExchangeServer -Identity -InternetWebProxy
Peki çalıştığınızı nasıl test edebilirim?
En güncel CU sonrasında aşağıdaki PS dosyasını çalıştırabilirsiniz.
Test-MitigationServiceConnectivity.ps1
Eğer başarılı ise sonuç aşağıdaki gibi olmalı
Result: Success.
Message: The Mitigation Service endpoint is accessible from this computer.
Eğer sorun var ise sonuç aşağıdaki gibi olmalı
Result: Failed.
Message: Unable to connect to the Mitigation Service endpoint from this computer. To learn about connectivity requirements, see https://aka.ms/HelpConnectivityEEMS.
Peki bu konuda başka güvenlik ürünleriniz var ve otomatik zafiyet azaltma için bir değişiklik istemiyorsanız ne yapacaksınız?
Organizasyon seviyesinde aşağıdaki PS komutunu çalıştırmanız yeterli
Set-OrganizationConfig -MitigationsEnabled $false
Eğer sunucu bazlı bu özelliği kapatmak istiyorsanız
Set-ExchangeServer -Identity -MitigationsEnabled $false
Peki hangisi baskın olur? Cevap aşağıdaki gibidir;
Peki organizasyonunuzda uygulanan zafiyet etkisini azaltıcı önlemleri nasıl görüntüleyebiliriz?
Get-ExchangeServer | fl name, MitigationsApplied
Name : Server1
MitigationsApplied : {M01.1, M01.2, M01.3}
Name : Server2
MitigationsApplied : {M01.1, M01.2, M01.3}
Peki EM bir zafiyeti azaltmak için önlem aldı, siz bunu geri aldınız ne olur? EM servisini yeniden başlattıktan 10dk sonra zafiyet azaltma önlemi tekrar uygulanır.
Peki bir zafiyet azaltma önlemi sunucuyu çalışmaz hale getirir ise bunu nasıl sileriz?
Set-ExchangeServer -Identity -MitigationsBlocked @(“M1”)
Birden çok zafiyet etkisi azaltma uygulanmış ise
Set-ExchangeServer -Identity -MitigationsBlocked @(“M1”, “M2”)
Uygulanan ve bloklanan zafiyet azaltma aksiyonlarını aşağıdaki şekilde listeleyebilirsiniz.
Get-ExchangeServer | fl name, MitigationsApplied, MitigationsBlocked
Name : Server1
MitigationsApplied : {M01.1, M01.3}
MitigationsBlocked : {M01.2}
Name : Server2
MitigationsApplied : {M01.1, M01.2}
MitigationsBlocked : {M01.3}
Bu durum hakkında daha detaylı bilgi ve rapor için CU ile gelen aşağıdaki PS komutunu kullanabilirsiniz.
.\Get-Mitigations.ps1 -Identity -ExportCSV “C:\temp\CSVReport.csv”
Bu konuya ait windows olay günlüklerini takip etmek için kaynak filtresi olarak “MSExchange Mitigation Service” kullanabilirsiniz.
Peki Microsoft hangi verileri paylaşmamızı istiyor. Öncelikle yeni CU yüklemesinde aşağıdaki gibi farklı bir seçenek ile karşılaşacaksınız.
Bunun açıklaması ise aşağıdaki gibidir;
Eğer bu data paylaşımını daha sonra yapmak istemiyorsanız aşağıdaki iki PS ile bunu açıp kapatabilirsiniz.
Set-ExchangeServer -Identity -DataCollectionEnabled:$false
Set-ExchangeServer -Identity -DataCollectionEnabled:$true
Umarım faydalı bir yazı olmuştur.