Anasayfa » Nexpose ile Şirket Ağlarını Zafiyetlere Karşı Taramak
Yazar Fikri Bulent tarih 06/02/2011 Yorum Yok
Şirket ağlarının güvenlik seviyesini tespit edip varsa açıklarının kapatmak günümüz Bilgi Teknolojileri dünyası için gayet önemli bir görevdir. Açıklar kimi zaman worm, trojan, virüs gibi isimler altında üretilen kötü amaçlı kodlarla kimi zaman da hacker, lammer gibi kötü amaçlı kişilerce kullanılabilir. Önemsenmeyen bir açık tüm ağı ve ağ üzerinden geçen bilgiyi tehdit edip kullanılamaz hale getirebilir. Örneğin işletim sisteminin yayımlanmış bir yamasının şirket sunucularına uygulanmaması bu açığı şirket içerisinde kullanılabilir kılar. Sasser, Blaster, Slammer gibi meşhur olmuş kötü amaçlı kodlar, dünya çapında sistem açıklarını kullanarak milyonlarca liralık yıkımlara mal olmuştur.
Rapid7 firmasının Nexpose isimli ürünü şirket ağlarını zafiyetlere karşı tarayarak bulunan açıklardan güvenlik yöneticilerini haberdar eder. Tarama yapılacak aralığı güncellediği veri tabanındaki zafiyetlere karşı tarar ve özelleştirilebilir raporlarla sunabilir.
Nexpose yukarıda bahsettiğimiz gibi ağda bulunan sunucuların, sunucu üzerinde kurulu uygulama ve servislerin açıklarını tarayan bir üründür. Böylelikle ile ağdaki açıklar tespit edilip önerilen çözümlerle probleme yol açmadan bertaraf edilebilir. Nexpose kullanımı kolay bir Web arabirimiyle yönetilmektedir (Resim-1)
Nexpose kurulumu desteklenen Microsoft veya Linux sürümleri üzerine yapılabilmektedir. Kurulum ile ilgili teknik detaylar ve deneme sürümü http://www.rapid7.com/products/nexpose/system-requirements.jsp linkinden edinilebilir.
Kurulum sonrası verdiğimiz IP adresi ile bağlanılan web tabanlı yönetim ekranında toplamda altı sekme bulunmaktadır. Bu makalede bu altı sekme ve bu sekmelerde bulunan başlıca menüler ele alınacaktır. Ana sayfada daha önce yapılmış taramalar ve o taramalar ilişkili istatiksel bilgi ve grafikler bulunmaktadır. Burada zafiyet taraması yapılacak alan “site” olarak oluşturulur. Örneğin 100.100.x.x ağındaki sunucular taranacaksa bir site oluşturup isimlendirilir ve bu istenilen IP aralığı tanımlanır (Resim-2, Resim-3). Böylece belirttiğimiz alandaki tüm IP adresleri tek tek taranacak ve tanımlanacaktır. Elbette istenilen IP adreslerinin istisna tutulması da mümkündür. Burada IP adreslerinin tek tek belirtilmesi de mümkün olduğu gibi, bir DNS yapılandırılması yapıldıysa isim bazlı ekleme yapmak da mümkün olacaktır.
Yapılacak tarama sonucu belirtilen aralık da bulunan tüm cihazlar birer “Asset” olarak tanımlanacaktır. Böylece her taramada “Asset” sekmesinde ağa yeni eklenen ürünleri görüntülenebilir.
Taranacak IP aralığının belirtilmesinden sonra Next ile devam edildiğinde Scan Setup ekranı gelecektir. Bu ekranda ise tarama ile alakalı yapılandırmaları yapmak mümkün olacaktır. Bu sayfada ayarlar üç ana başlıkta toplanır;
a) Scan Template
b) Scan Engine
c) Scan Schedule
Bu başlıklardan Scan Template incelendiğinde (Resim-4) yapılacak taramanın hangi tarama şablonunun kullanılarak yapılacağının belirlendiği görülecektir. Buradaki listede default olarak sağlanan tarama şablonları listelenir. İstenirse kendi tarama şablonlarımızı oluşturmak da mümkündür. Mevcut şablonların yönetimi veya yeni tarama şablonların oluşturulması için de Administration sekmesi kullanılır. Şablonlar hakkında bilinmesi gereken gerekli bilgiler şablonların açıklamasından bulunabilir. Ama kısaca özetlemek gerekirse bir Web sunucunun açıklarının taranmasıyla bir Penetration test farklı yaklaşımlar gerektirir. Burada amacınıza uygun şablonu seçerek ağınızı hedeflediğiniz amaç ve sonuç doğrultusunda taratabilirsiniz. Elbette bu şablonların seçiminde dikkat edilmesi gereken en önemli konulardan biri de default olarak bazı şablonlar bazı bilinen hesapları deneyebilirler. Örneğin bir SQL sunucuda SA hesabı veya bir Microsoft makinada Administrator hesabı gibi. Burada çıkacak problem de birden fazla yanlış parola girilmesi durumunda hesabın kilitlenmesini sağlayan bir GPO varsa servis kullanıcı hesabının kilitlenmesi sebebiyle çalışamaz duruma gelebilir. Bu tür sıkıntıların üretim ortamında oluşmaması için kendinize özel Scan Template’ ler oluşturup bu tür testleri hariç tutabilirsiniz. İlgili konuya Administration sekmesi anlatımında tekrar değinilecektir.
Bir diğer başlık olan Scan Engine ise taramanın yapılacağı veri tabanı için lokal veya remote veri tabanı mı kullanılacağının belirtildiği yerdir.
Son başlık ise Scan Schedule ayarıdır. Burada bu tarama işlemi için bir zamanlama yapmamız taramayı rutin bir iş haline getirmemiz mümkün olacaktır. Böylelikle ile mesai dışı bir saatte Nexpose belirttiğiniz kriterlere bağlı kalarak yine belirttiğiniz saatler arasında tarama gerçekleştirebilir.
Site oluşturma işlemini için Next tuşu ile devam edildiğinde Alerting kısmına gelinecektir. Burada bir takım zafiyetlerin bulunması durumunda tanımlı SMTP sunucu üzerinde bilgilendirmenin yapılması sağlanabilir. Burada hangi tür açıklarda alert üretileceği de belirlenebilmektedir (Resim-5)
Next ile son aşamaya geçildiğinde tarama işlemi sırasında istenirse bir kullanıcı adı ve parolası verilerek sisteme logon olunması sağlanabilir. Elbette bu bilgi girilmeden de Nexpose size birçok bilgi verecektir.
Save tuşuna basıldığında tarama başlatabilecek bir site yapımız oluşmuş olacaktır. Taramanın tamamlanmasıyla Asset objeleri oluşacaktır. Oluşan objeleri de Assets sekmesinde görmeniz mümkün olacaktır. Bu sekmeye girildiğinde oluşmuş Asset objelerini Site, Grup, İşletim Sistemi, Servis veya Yüklü Yazılım bilgilerine göre görüntülemek mümkün olacaktır (Resim-7).
Örnek olarak İşletim sistemine göre bir sıralama yapıldığında tarama sonucu oluşan öğeler Resim-8’de de görülebileceği görüntülenecektir.
Veya bir obje tıklandığında detayında birçok bilgiye erişilebilir. Sunucuya ait açıklar da görüntülenecektir (Resim-9). Burada bulunana açıkların önem dereceleri de görülebilecektir.
Exploitability kolonunda “Exploitable” olarak belirtilmiş açıklar bir takımı yöntemlerle söz konusu sunucuya erişilip Root veya Administrator olarak kod çalıştırmanızı sağlayabilecek önemli açıklardır. Açığın ne şekilde kullanılabileceği Exploitable linkine tıklanarak öğrenilebilmektedir. Rapid7 Nexpose ailesinde bulunan Exploit’i istendiğinde direk olarak kullanabilen bir ürün de bulunmaktadır. Yine burada görülebileceği gibi bir açık Nexpose sisteminde tanımlı bir kullanıcıya Ticket olarak atanabilir. Yani bu açığın kapatılması için Nexpose tarafından tavsiye eden iyileştirme adımlarını yapacak görevlendirme Nexpose ekranında yapılabilir.
Yine bu ekranda Create Device Report butonuyla cihazın raporlaması çıkarabilir. Raporlama için de daha sonra değinileceği gibi hazır şablonlar kullanılabileceği gibi özelleştirilmiş, detayları kişiselleştirilmiş şablonların oluşturulması da mümkündür.
Ticket sekmesi daha önce bahsedildiği gibi bir cihazla alakalı problemin bir ilgiliye atanmasıdır. Böylece şirket içinde Güvenlik departmanında ilgililer bu ekrana logon olarak kendilerine atanan işleri takip edebilirler (Resim-10, Resim-11).
Taramaların raporlanması da Report sekmesinin kullanımıyla mümkündür. Burada mevcut raporlar görülebilir. Yeni raporlar oluşturulabilir (Resim-12).
Elbette oluşturulacak rapordan önce taramanın gerçekleştirilmesi gerekecektir. Bir rapor oluşturulmasının ilk adımı Resim-13 ekranında görüldüğü gibidir. Burada oluşturulacak rapora isim ve format bilgileri verilir. Format olarak pdf, rtf, xml gibi birçok seçenek kullanılabilir. Report Template kısmında bir rapor şablonu oluşturulurken raporun hangi detayda olacağı, hangi bölümlerden oluşacağı belirtilebilir. Raporun hangi aralıklarla tekrarlanacağı da bu ekranda belirtilebilir.
Vulnerabilities sekmesinde ise taramalarla tespit edilen zafiyetlerin listesini ve yoğunluklarını, önem derecelerini görüntülemek mümkün olmaktadır.
Bir açığın üzerine geldiğinde hangi makinaları ne şekilde etkilediğini görmek de mümkündür.
Tüm yönetimsel görevlerin takip edilip yapılabildiği Administration sekmesinde toplam on dört başlık bulunmaktadır. Users isimli link tıklandığında Nexpose sistemini kullanacak kullanıcıları oluşturup onlara uygun görevlendirmeler yapmak mümkün olabilecektir. Daha önce bahsedildiği gibi eğer bir ticket sistemi ile bir takım açıkların kapatılması diğer takım üyelerine paslanacak birçok kullanıcı oluşturmanız gerekebilir. Bu ekranda çok detaylı bir şekilde kullanıcı oluşturmanız mümkündür. Oluşturacağınız kullanıcının hangi Site objelerini görebileceğini, hangi Asset objelerini yönetebileceğini veya global bir kullanıcı mı olduğunu ya da sadece kısıtlı yetkiye sahip bir kullanıcı mı olduğunu yine bu ekranda belirtilerek oluşturulabilir.
Bir diğer link ise Asset Groups linkidir. Bu link kullanılarak Asset objelerini dinamik veya statik bir şekilde gruplamanı ve dolayısıyla da daha kolay yönetmeniz mümkün olacaktır. Schedule Calendar linkiyle de aylık olarak tanımlı tarama ve raporlamalarınızı görebilirsiniz. Scan Histoty başlığı altındaysa geçmiş taramalarınıza ait bilgiler görüntülenebilecektir. Daha önce de bahsi geçen Scan Templates linkiyle taramalar özelleştirilebilir. Böylece sizin kriterlerinize göre taramaların yapılması mümkün olabilir. Daha önce belirtilen bir başka konuda taramaların üretim ortamını etkilememesi için bir takım parametrelerin, bir takım tarama seçeneklerinin iyi düşünülüp ayarlanması gerektiğiydi. Scan Templates ekranı açıldığında default olarak gelen şablonlar görüntülenecektir (Resim-17). Bu şablonlar Copy butonuyla klonlanabilir. Ve klon üzerinde istenilen değişiklikler yapılabilir.
Klonlanmış bir tarama şablonu edit edilmek istendiğinde gelen menüde taramaya ait birçok değişikliği yapılması mümkündür. Hangi cihazların ne şekilde tespit edileceği, hangi zafiyet çeşitlerine bakılacağı gibi.
Scan Templates içinde bir başka önemli ayarda Vunerability Checks kısmıdır. Burada ne tür taramaların yapılacağı belirtilebilir. Burada bazı tarama türlerini Disabled ederek devre dışı bırakmak mümkündür. Yine sistemlerde bir kesintiye sebep verilmemesi açısından Perform Unsafe Checks seçilmemelidir. Default Account, Unsafe taramalarının devre dışı bırakılması uygun olacaktır (Resim-19).
Report Templates kısmında ise tarama sonuçlarından üretilecek raporların içeriğini belirtmek mümkündür. Mevcut default şablonlar PCI gibi standartlara uygun raporlar üretebilmektedir. Genelde çok detay barındıran default şablonların yerine özelleştirilmiş şablonların kullanılması daha uygun sonuçlar alınmasını sağlamaktadır (Resim-20).
Yeni bir Report Template oluşturulmak istendiğinde New Report Template butonu tıklanır. Gelen ekranda isimlendirme ve detay seviyesi belirtilir. Next ile devam edildiğinde (Resim-22) raporun içereceği başlıkların belirlendiği ekran gelecektir. Bu ekran kullanılarak size en uygun raporun oluşturulması için gerekli başlıkları belirleyebilirsiniz.
Bir kaç denemeyle en efektif raporlama şablonunu oluşturmak mümkündür.
Security Console linki tıklanıp General balığı seçildiğinde ise sistemin versiyon, güncelleme ve lisanslama bilgileri görüntülenebilir. Yine bu sekmede güncelleme ayarları kullanılıyorsa proxy ayarları yapılabilir.
Maintenance Page sekmesiyle de sistemin yedeklerinin alınması veri tabanı bakımının yapılması mümkündür. Yedekleme işlemini ekrandan direk olarak yaptırmak mümkündür. Bu yedeğin de yine istenirse geri dönülmesi yine aynı ekrandan yapılabilmektedir.
Troubleshooting sekmesiyle Diagnostic ayarları değiştirilebilir. Burada bir hata arama sırasında kullanılabilecek bilgiler belirtilebilir. Log yollanması sağlanabilir.
Nexpose ürününün menülerinin daha birçok ayarı barındırdığı aşikârdır. Fakat genel hatlarıyla Nexpose ürünün birçok fonksiyonu bahsettiğimiz menülerle sağlanabilmektedir. Elbette sistemlerin korunması sadece zafiyet taramasıyla sağlanamayacaktır. Bunun yanı sıra anti virüs, antimalware, antispyware, UTM, IDS, IPS, IDP ürünleri de bir ağda olmazsa olmazlardır. Bir başka yazıda görüşmek üzere.