Zaafiyet Yönetimi Sistemi ile BT Sistemleri’ndeki olası zaafiyetler belirlenerek tehditler için kontrol aksiyonları alınması amaçlanır. Peki zaafiyet ve tehdit nedir?
Zaafiyet (vulnerability) , sistemlerde tehditlere hedef olabilecek yapısal ve konfigürasyonel açıklıklardır.
Tehdit (threat): Sistemlerdeki açıkları kullanarak sistemleri ele geçirme veya devre dışı bırakmaya yönelik kullanılabilen suistimallerdir.
Zaafiyetler hangi sistemlerde bulunur, bu sistemlerin sahipleri kimlerdir? Bu sistemlerin kritik seviyeleri nelerdir? Kritik olmayan bir sunucuda bulunan kritik bir açık ne kadar kritiktir? ZYS için öncelikle varlıklarımızı kritiklik seviyelerine göre sınıflandırmış olmamız gerekmektedir.
Sahiplik
Sistemlerimizde kullanılan sunucu, network cihazı, terminal, utp kablo vb’nin sahibi kimdir? Bankalardaki Veritabanı Yönetim Servisi’nden örnek verecek olursak, Veritabanı Sunucusu’nun ve içinde barındırdığı bilginin sahibi Sistemci mi yoksa bu bilgileri kullanarak kuruma gelir kazandıran iş birimi midir? Müşteri kayıt formundaki iki imzadan biri müşterinin ise diğer imza kime aittir? BT’ye mi? Tabii ki hayır: İlgili şube, dolayısıyla o şubenin bağlı olduğu ilgili İş Birimi Müdürlüğü’ne aittir. Bu açıdan düşünüldüğünde, Veri ve Sistem’in sahibi, kurumlardaki İş Birimleri’dir. BT, bu verinin ve sistemin bütünlüğünden (integrity), gizliliğinden (confidentiality) ve erişilebilirliğinden (availability) sorumludur (Data Custodian).
Sistemlerin sahiplerini bulduğumuza göre artık ZYS’ye dönebiliriz. Günümüzde, zaafiyet analizleri BT Güvenliği, BT Risk, BT Uyum gibi farklı birimlerce yürütülmektedir. Buradaki yaklaşım –çoğunlukla-, zaafiyetlerin bu işe özel bir yazılım ile bulunması (şanslı ise manuel testlerle de), ilgili sistem yöneticilerine ticket/issue açılması (giydirilmesi J ), son olarak da bulguların giderildiğinin belirtilmesinden sonra kontrol taraması yapılmasıdır.
Peki, bu taramanın yapılmasını kim istemiştir? Taramayı yapan birim, kendi kendine aksiyon almaya yetkili midir? Tarama sırasında ya da iyileştirici aksiyon alınırken hizmet dışı vb oluşursa sorumluluk kime ait olacaktır? (Bazı yamaların ya da konfigürasyonların etkin olması için restart gerekmesi vb). Bu noktada, İş Birimleri’ne gerekli farkındalığın kazandırılması ve onlar adına bu teknik faaliyetlerin ilgili birimlerce yürütülmesi gerekmektedir. Bu olgunluk düzeyinin sağlanması ilgili BT Birimleri’nin sorumluluğundadır. Unutulmamalıdır ki, İş Birimi’nin önceliği İş Sürekliliği (Business Continuity), Sistem Birimi’nin önceliği ise Erişilebilirliktir (Availability).
NE’nin yapılacağına İş Birimi karar verdikten sonra (BT Birimleri’nin yönlendirmesiyle) NASIL yapılacağı konusunu BT Güvenliği Birimi’ne outsource edebilir. Bu noktadan sonra sistem sahibinden yetki alan BT birimi, gerekli taramaları yaptıktan sonra dikey ve yatay taramaların kesişimindeki sistemlerin zaafiyetlerini ilgili sistem yöneticisine nokta atışı çözüm önerisiyle birlikte sunmalıdır. Zaafiyet Analizi yazılımlarının çoğu sadece link verdiğinden o kadar linki okuyacak kaynak/bilinç maalesef yoktur.
Günümüzde çoğu zaafiyet taraması yatay yapılmakta; varlıklar türlerine göre (Microsoft Sunucu, Unix/Linux Sunucu, Network Cihazı, Veritabanı Sunucusu vb) zaafiyet taramasından geçirilmektedir.
Aşağıdaki tabloda görüldüğü gibi, yatay tarama sonucu sadece ilgili sistem yöneticisine özel bir rapor olacaktır:
|
Internet Bankacılığı |
Ana Bankacılık |
E-Posta Sistemi |
Microsoft |
MS1 |
MS2 |
MS3 |
Veritabanı |
DB1 |
DB2 |
DB3 |
Network |
SW1 |
SW2 |
SW3 |
Unix/Linux |
U/L1 |
U/L2 |
U/L3 |
Tarama1: MS1+MS2+MS3 olduğunda, birçok MS Sistem Yöneticisi için hepsinin önceliği aynıdır: “0”, sıfır J
Neden? Sistem Yönecisi’nin önceliği Güvenlik değildir de ondan. Sistem Yöneticisi’nin önceliği erişilebilirliktir (availability). Sistem Yöneticisi gözünden bakıldığında, zaafiyetleri kendisine gönderen (giydiren) birim, bir tool ile next-next yaparak tarama yapıp sonuçlarını mouse ile sağ tık- assign eden birimdir. Bu yaklaşımın çok etkin/başarılı olmamasının sebebi de budur. Öyle ise burada yanlış olan nedir? ZYS’nin yetkilendirilmesi için taramanın dikey olarak proje bazlı yapılması gerekmektedir.
Her hafta ctesi gece 03:00’te Internet Bankacılığı Projesi’nin zaafiyet analizini dikey yapıp (MS1+DB1+SW1+U/L1) Executive Report olarak ilgili İş Birimi Müdürü’ne sunduğumuzda, pie-charttaki kırmızı dilimin fazlalığı BT Güvenliği’nin aksiyon alma sürecindeki en büyük destekçisi olacaktır. Bu açıdan bakıldığında, İş Birimi, BT Güvenliği Birimi’ni para kazandığı Internet Bankacılığı Projesi’ndeki teknik risklerin giderilmesi için kiralamış gibi düşünülebilir. BT Güvenliği Birimi’nin de aldığı bu gücü ve ZYS raporlarını kullanarak bu süreci etkin şekilde yönetmesi sonuçlarını da Yönetim’e raporlaması gerekmektedir.
Etkin ZYS Sistemi için:
Dikey ve yatay taramalar sonucu, kurum sistemlerindeki en kritik açıklar sistem bazında (unix, ms, network, veritabanı vb) belirlenerek sistem kurulum prosedürlerinde BT Güvenliği adımı olarak yerini almalıdır. Örneğin, Unix sunucularda kronik hale gelmiş yüksek seviyeli 10 bulgu Unix Sunucu Kurulum Prosedürü’nde BT Güvenliği adımı olarak yerini aldığında taramalarda, yüksek dereceli bulgu sayısı azalacaktır. Bu da Sistem ve Güvenlik Birimleri’nin iş yükünü önemli ölçüde azaltacaktır. Bu liste dinamik olacağından yeni bulgular eklenip geçerli olmayanlar çıkarılacaktır.
Güvenlik sadece zaafiyet taraması yapan birimin işi değildir. Öncelikle, ilgili sistemi (dikey) kullanarak para kazanan iş biriminin, sonrasında Sistem Yöneticisi’nin, son olarak da zaafiyet analizini yapan birimindir. Zaafiyet taramalarında çok sayıda bulgu çıkması durumunda, bu Sistem Birimi’nin mi yoksa BT Güvenliği’nin mi başarısızlığıdır? Yoksa başarısı mıdır?
Zaafiyet Analizi Raporu’ndaki bulguların seviyelerini değerlendirirken bulgu sahibi varlığın da kritiklik seviyesini göz önünde bulundurarak İyileştirme Planı (Remediation Planı) yapılmalıdır. Yüksek seviyeli bulgular 1 hafta içinde, orta seviyeli bulgular 1 ay içinde, düşük seviyeli olanlar da 3 ay içinde giderilmli gibi kurum politikasına göre oluşturulan, bir nevi bulgu takip listesi hüvüyetinde olacak bu liste yardımıyla bulguların bir plan dahilinde giderilmesi ve kontrolü sağlanacaktır.
Zaafiyet aracının önerisinin yanısıra kuruma özel çözümlerin de kayıt altına alınabileceği bir sistem kurularak know-how havuzu oluşturulmalıdır. Bu sayede, aynı zaafiyet farklı bir sistemde de raporlandığında bu know-how kullanılarak hızlı/etkin aksiyon alınabilir.
Denetimler açısından bakıldığında, ZYS’de kullanılan ürünün yetkinliği değil; sürecin bir bütün halinde işletilmesi önemlidir. En çok bulgu bulup nokta atışı iyileştirmeler öneren bir ürün alındığında bile açılan ticket/issuelar uzay boşluğuna gidiyorsa denetim konusunda sıkıntı yaşanacağı aşikardır.
Önemli olan zaafiyet ürününden ziyade Zaafiyet Yönetimi Sistemi kurmaktır. Zaafiyetin bulunması için yetki alınmasından giderildiğinden emin olunmasına kadar geçen süreç bir bütün olarak düşünülmelidir.
Güvenliğin tüm birimlerin görevi olduğu noktasından çıkıldığında ZYS içindeki olası aksaklıklar ivedilikle çözülebilir. Bir adım ileriye gidildiğinde ise, bu ZYS operasyonlarını ilgili sistem yöneticilerin yapması sağlanmalıdır. Böylece, sistem yöneticilerinin ZYS’yi daha fazla benimseyerek kurum kültürünün parçası haline getirmeleri sağlanmalıdır.
Peki en iyi ZYS Yazılımı hangisidir?
Zaafiyetleri en çok bulan mıdır? Bu zaafiyetlerle ilgili iyileştirme adımlarını en net şekilde ortaya koyan mıdır? Bulduğu zaafiyetlerle ilgili otomatik ticket/issue açan mıdır? Sürecin herhangi bir anında istediğiniz türde raporlama yapan mıdır?
İyi bir ZYS Yazılımı’nın aşağıdaki sorulara cevap veriyor olması gerekmektedir:
Kurulum: |
– Kurulum opsiyonları neler? (Hardware, Software, Service) |
– Unix/Linux/Microsoft sunucu üzerine mi kuruluyor? |
– 64-bit desteği var mı? |
– Veritabanı olarak ne kullanıyor? Veriler nasıl saklanıyor? |
Yapılandırma: |
– Envanterler gruplanarak farklı politikalar uygulanabiliyor mu? (unix, microsoft, veritabanı, network vb) |
– İmza veritabanı neler içeriyor (network, os, veritabanı, web application vb)? Ne sıklıkta güncelleniyor? |
– Farklı network taramaları için agent vb opsiyonu var mı? Nasıl lisanslanıyor? |
– csv formatındaki assetleri import edebiliyor mu? |
– Rapor çıktıları Metasploit, Immunity Canvas gigi exploit yazılımlarına import edilebiliyor mu? |
|
Zaafiyet Taraması,Raporlama,Ticketing ve İyileştirme |
– Asset Discovery özelliği var mı? |
– Compliance için hazır tarama şablonları var mı (PCI, NIST, HIPA, FISMA vb)? Bunlar için ekstra ücret talep ediliyor mu? |
– Wireless ağ tarama özelliği var mı? |
– VOIP ağ tarama özelliği var mı? |
– Envanter grupları için Best Practices tarama şablonları var mı? Bunlar için ekstra ücret talep ediliyor mu? |
– Web Uygulaması tarama opsiyonu var mı? Ücrete dahil mi? |
– Tarama için kullanılan engineler neler? (nmap, netcat vb) |
– DOS taraması yapabiliyor mu? |
– Kendi zaafiyet imzalarımızı tanımlamak için arayüzü var mı? |
– User Credential vererek tarama yapabiliyor mu? (Authenticated scan) |
– Hangi veritabanlarını destekliyor? (Oracle, DB2, MS SQL, Mysql vb) |
– Ticket mekanizması var mı? Kaç kişi tanımlanabiliyor? Lisanslama nasıl yapılıyor? |
– Geçmişe dönük raporlama yapılabiliyor mu? |
– Tarama raporları nerede nasıl saklanıyor? (şu dizinde, encrypted/hashed olarak vb) |
– Tarama ve Raporlar için farklı yetkilendirme seviyeleri var mı? |
– Farklı iki tarihte yapılan taramalar arasındaki farkı gösterebiliyor mu? (Delta, Differential Reporting, Trend Analizi, Önceden şu durumdaydı, şu an bu durumda gibi) |
– Hedef sistemlerde tespit edilen güvenlik açıkları için exploit bilgisi de bulunuyor mu? |
– Bulguları gidermek için nokta atışı öneriler yapabiliyor mu? (remediation) |
– Custom raporlar oluşturulabiliyor mu? Farklı raporlar için ekstra ücret talep ediliyor mu? |
– Scheduled Tarama ve Raporlama özellikleri var mı? |
– Veritabanlarında yama seviyesi kontrolünün yanında konfigürasyon kontrolleri yapabiliyor mu? (Yetkili kullanıcı verilerek) |
Diğer: |
– Audit mekanizması var mı? (kim ne değişiklik yaptı vb) |
– Lisanslama nasıl yapılıyor? (IP bazlı vb) |
– Baz lisans dışında ekstra ücret talep edilen modüller hangileri? |
– 2. yıl için ne kadar bakım ücreti ödeniyor? |
– Referansları ve görüşebileceğimiz kontakt kişi |
Umarım faydalı bir makale olmuştur.