|
Son yılların popüler ve bakir
alanlarından birisi olan bilişim güvenliği, bilişim teknolojilerini aktif
kullanan kurumlarda yerini sağlamlaştırmaya devam ediyor. Yazılım veya donanım
geliştiren firmalar, geliştirme sürecinde güvenli ürün geliştirme
standartlarına eskiye nazaran çok daha fazla önem verseler ve bu konuda ciddi
yatırımlar yapsalar da her geçen hafta yeni açıklıklarla karşı karşıya
kalıyoruz.
Örneğin Ulusal Bilgi Güvenliği Kapısı, aktif olduğu tarihten itibaren geçen yaklaşık
yedi aylık sürede, açıklıkları seçerken ciddi bir elemeye tabi tutmamıza
rağmen, 121 güvenlik bildirisi yayınladı [1]. Bunlar, tamamına yakınının kritik
derecede öneme sahip olması ve kapsadıkları bilgi sistemi varlıklarının Türkiye'de
yaygın kullanılması sebebiyle acil önlem alınmasını gerektiren güvenlik
zafiyetleri ile ilintiliydi. Aynı gerçeği Internet'te güvenlik trendi
konulu araştırmalar yapan diğer firmaların raporlarında da görmek mümkün [2].
Birkaç yıl öncesine kadar orta
ve büyük ölçekli kurumlar bilişim güvenliği testleri konusundaki ihtiyaçlarını
bu konuda uzmanlaşmış firmalardan almayı tercih ederken artık kendi insan ve
teknolojik altyapı kaynaklarını oluşturma gayreti içerisine girdiler. Bu
yönelim her ne kadar bilişim güvenliğine verilen önemin arttığının bir
göstergesi olsa da gerçekleştirilen güvenlik testlerinin kalitesi ve ne derecede
başarılı olduğu konusunda bazı soru işaretlerinin oluşmasına neden oldu.
İlerleyen bölümlerde bilişim güvenliği testlerinde dikkat edilmesi gereken
konular irdelenecektir.
Üst Yönetim İle Aramız Nasıl?
Güvenlik testlerini gerek kurum
personeli gerekse ayrı bir firma gerçekleştirsin en birincil güç, yönetim
desteğinin alınmasıdır. Özellikle güvenlik testlerinin önemini özümseyememiş
kurumlarda bu testleri gerçekleştirmek ile görevli personel bazı zorluklar
yaşayabilir veya elde edilen bulgular sonucunda belirlenen tedavi planının
hayata geçmesi mümkün olmayabilir. Şu da bir gerçektir ki sistemde bulunan
açıklıkların ortaya çıkarılması her ne kadar önemli bir bilgi birikimi
gerektirse de genellikle bu açıklıkların kapatılması veya elimine edilmesi çok
daha kritik operasyonel süreçlerin uygulanmasını gerektirir. Böyle durumlarda
bilgi işlem personelinin, sistemlerin kesintisiz ve sorunsuz çalışmasını daha
fazla önemseyeceği unutulmamalıdır.
Diğer taraftan güvenlik
açıklıklarının kapatılmasına yönelik güncellemelere üçüncü bir tarafın dahil
olması sürecin çok daha uzamasına yol açabilir. Bu durum, genellikle bir
kurumun ihtiyacı olan bir uygulamayı başka bir firmaya geliştirtmesi ve bu
uygulamada bir güvenlik açıklığının ortaya çıkması ile oluşur. Ülkemizde üçüncü
firma ile yapılan anlaşmaların çoğu ilgili uygulamanın işlevsel olarak görevini
yerine getirmesine yönelik olduğundan güvenlik amaçlı güncellemeler için
ihtiyaç duyulan insan gücüne ve yatırımlara sıcak bakılmaması yadırganacak bir
durum değildir.
Gerçekleştiğimiz bilişim
güvenliği testleri sonucunda elde ettiğimiz bulguların ve belirlenen tedavi
yöntemlerinin ilgili kurum veya kurumlara iletilmesinden sonra zamanında tedbir
alınmadığından dolayı aynı yöntemler ile sistemlerin saldırganlarca ele geçirilmesi
ile sonuçlanan bazı tecrübeler yaşamamız zamanında müdahalenin önemini ortaya
koymaktadır. Bu acı tecrübelerin önünün alınabilmesi, dolayısıyla gerek bilgi
işlem personelinin gerekse ilgili diğer birimlerin motive edilmesinin en etkin
yolu üst yönetimin desteğinin alınmasıdır. Yönetim desteği, ancak gerekli
bilgilendirmenin yapılması ile mümkün olabilir. Projenin başında ve sonunda bu
amaçla üst yönetim ile toplantıların gerçekleştirilmesi faydalı olacaktır. Bu
bağlamda:
-
bazı
örnek saldırı senaryolarının gerçekleştirilebileceği giriş sunumu yapılması,
-
aynı
toplantıda çok uzun olmamak kaydıyla bilgi güvenliği ile ilgili çarpıcı
bilgilerin sunulması,
-
üst
yönetimin çalışmalar esnasında davet edilmesi ve çalışma ortamında tespit
edilen açıklıkların gösterilmesi,
-
kapanış
toplantısında, elde edilen bulguların çok detaya girmeden iletilmesi,
başvurulacak yöntemlerden
bazılarıdır.
Sızma Testleri mi, Sistem
Denetlemeleri mi?
Son yıllarda özellikle bilgi
güvenliği uzmanları arasında tartışılan konulardan birisi de güvenlik
testlerinin gerçekleştirilme yöntemleridir. Uzaktan ve düşük yetki seviyesi ile
gerçekleştirilen sızma testlerinin mi yoksa sistem yöneticisi yetkileri ile
yapılan sistem denetlemelerinin mi daha sağlıklı sonuçlar üretileceği bu
tartışmanın ana konusudur. Ağırlıklı görüş, sistem denetlemelerinin daha
kapsamlı ve daha çok açıklığı ortaya çıkarıcı olması, bu sebeple kurumlara
öncelikle sistem denetlemeleri tavsiye edilmesi yönündedir.
Gerçekleştirdiğimiz farklı
güvenlik testleri, her iki yöntemin de kendine göre avantaj ve
dezavantajlarının olduğunu ortaya koymuştur. Sistem denetlemelerinin kapsamının
her ne kadar daha geniş olduğu düşünülse de bu çalışmaların sadece önceden
hazırlanmış kontrol listelerinin üzerinden geçilmesi şeklinde uygulanması
testlerin kalitesini oldukça düşürmektedir. Bu tür bir çalışmanın çok daha
maliyetli olmasına rağmen kurumlara fazla katma değer sağlamadığı
ortadadır. Diğer bir deyişle sistem
denetlemelerinin saldırgan bakış açısı ile sistemleri değerlendirememe ya da
birçok sistem bir araya geldiğinde oluşan güvenlik zafiyetlerini ortaya
koyamama eksikliği vardır. Ayrıca kuruma özel uygulamaların veya kontrol
listesi olmayan varlıkların güvenliği konusu belirsizdir. Öte yandan sızma
testleri her ne kadar çok maliyetli olmasa da sistemlerde bulunabilecek
açıklıkları detaylı olarak ortaya çıkarmaktan uzaktır.
Şekil 1. Sistem denetlemesi ve Sızma testleri
Durum göz önünde
bulundurulduğunda önerilen, her ikisi yöntemin sentezlenmesiyle elde edilecek
hibrit bir metodoloji ile güvenlik testlerinin gerçekleştirilmesi yönündedir [3],[4].
Bu şekilde testlerde eksik nokta bırakılmayacak ve daha gerçekçi bir yaklaşım
tarzı sergilenecektir.
Testlerin Kapsamı Ne
Olmalı?
Güvenlik testlerini kapsamlı ve
tam olarak gerçekleştirmenin yolu bilgi sistemlerinin her katmanı için ihtiyaç
duyulan test adımlarının uygulanmasıdır. Bu katmanlar bilgi sistemi varlığının
kullanım amacına göre değişir. Bir ağ aktif cihazı için ağ seviyesinde ve
işletim sistemi seviyesinde testler yeterli olurken, bir web tabanlı bankacılık
uygulamasında bu iki katmana ek olarak uygulama platformu ve bankacılık
uygulaması katmanları da test kapsamına alınmalıdır. Bu katmanlar birbirleri
ile oldukça yakın ilişki içerisindedir. Örneğin ağ katmanında elde edilen bir
kullanıcı bağlantı bilgisi kullanılarak bağlanılan bir uygulamada daha büyük
bir açıklık ortaya çıkartılabilir ve işletim sisteminde yeterli güvenlik önlemi
alınmadığı için saldırının etkisi arttırılabilir.
Şekil 2. Güvenlik testi katmanları
Ticari Açıklık Tarama
Araçları veya Kontrol Listeleri Yeterli mi?
Günümüzde
otomatik açıklık tarama araçları sistem denetçileri ve sızma testi
gerçekleştiren personelin hayatını oldukça kolaylaştırmakta ve harcanan
işgücünü kayda değer miktarda azaltmaktadır. Fakat, sadece bu araçlar
kullanılarak gerçekleştirilen testlerin tatmin edici sonuçlar ürettiğini
söylemek güçtür. Öncelikle bu araçlar çok fazla yanıltıcı bulgu (false positives, false negatives)
ortaya çıkarmakta ve bunların testi gerçekleştiren personel tarafından kontrol
edilmesi gerekmektedir. İkinci olarak otomatik araçlar bazı durumlarda kurum
için çok önemli olabilecek ve tespiti zor olmayan açıklıkları
atlayabilmektedir. Kontrol listeleri ile gerçekleştirilen güvenlik testleri
için aynı şeyleri söylemek mümkündür.
Her bilgi sistemi,
kendine özgü kurulum ve yapılandırması ile farklı karakteristiğe sahiptir. Bu
sebeple güvenlik testlerinde farklı yöntemlerin kullanılması ve insan zekasının
dahil edilmesi önemlidir. Örneğin bir web uygulamasında var olan bir SQL
enjeksiyonu açıklığı otomatik araçların yöntemleri ile ortaya çıkarılamazken
gönderilen girdinin az miktarda değiştirilmesiyle açıklık tespit
edilebilmektedir. Ek olarak, özellikle yeni geliştirilen test teknikleri, en
azından otomatik araçlar üretilene kadar, manuel metotlarla uygulanabilir
olabilmektedir. Bu sebeple güvenlik testlerini gerçekleştirilecek personelin
manuel testleri uygulama konusunda kabiliyetlerinin gelişmesine imkan
tanınmalıdır.
Rapor Formatımız
Kurum İhtiyaçları İçin Uygun mu?
Her projenin bir çıktısı olduğu
gibi bilişim güvenliği testlerinin de bir çıktısı vardır. Bu çıktı test sonuç
raporudur. Bir ürünün nasıl kalitesi kullanıcı memnuniyeti ile ölçülüyorsa,
güvenlik testlerinin kalitesi de aynı şekilde test sonuç raporunun müşteriyi
memnun etmesi ve ihtiyaçlarını karşılaması ile ölçülür. Test sonuç raporunda:
-
Test metodolojisi ve test kapsamı sonuç
raporunun giriş bölümlerinde belirtilmelidir.
-
Bulunan açıklıklar detaylı olarak açıklanmalı ve
elde edilen kanıtlarla renklendirilmelidir.
-
Açıklığın sisteme olan etkileri irdelenmeli ve
etkilediği sistem varlıkları belirtilmelidir.
-
Açıklığın kapatılma yöntemine değinilmeli,
gereken yerlerde referans kaynaklara atıfta bulunulmalıdır.
-
Test adımlarından başarısız sonuçlananlar da
raporda özet olarak yer almalı bu şekilde müşteri, gerçekleştirilen testin
derinliği hakkında bilgilendirilmelidir.
-
Açıklıklar ile ilgili sınıflandırma, varlık
çeşidine veya önem derecesine göre yapılmalıdır. Bu noktada müşterinin
talepleri yönlendirici olmalıdır.
-
Üst yönetimin anlayacağı seviyede az teknik
bilgi içeren ve grafiksel gösterimlerle desteklenen özet bir sonuç raporu da ek
olarak hazırlanmalıdır.
Test Sonuç
Değerlendirmelerimiz Ne Kadar Sağlıklı?
Test sonucunda elde edilen
açıklıkların kritiklik derecesinin sağlıklı belirlenmesi en azından açıklığın
ortaya çıkarılması kadar önemlidir. Öncelikle, güvenlik testini
gerçekleştirecek birimdeki personel, kritiklik derecelerinin sayısı ve anlamı
konusunda fikir birliği içerisinde olmalıdır. Bu aşamada üç kademeli yöntem
(düşük, orta, yüksek) kullanılabileceği gibi PCI (Payment Card Industry) tarafından tavsiye
edilen beş seviyeli (acil, kritik, yüksek, orta, düşük) derecelendirme de
kullanılabilir [5]. İki derecelendirme arasındaki en büyük fark birinci
yöntemde yer alan yüksek derecelendirme seviyesinin ikinci yöntemde yüksek,
orta, düşük olarak detaylandırılmasıdır.
İkinci nokta ise bu derecelerin
ne anlama geldiğinin belirlenmesi ve rapor hazırlayan kişilerce
paylaşılmasıdır. Raporlarda yer alan açıklıklar arasında tutarlılık olmasının
yegane yolu budur. Diğer bir deyişle A kişisi bir açıklık için yüksek önem
derecesini kullanıyor iken bir diğer kişi benzer açıklığa orta önem derecesine
sahiptir dememelidir. Aşağıda, dereceler için örnek tanımlar yer almaktadır. Bu
tanımlar aynen kullanılabileceği gibi kurumların ihtiyaçlarına uygun olarak da
güncellenebilir.
-
Acil
öneme sahip açıklıklar niteliksiz saldırgan tarafından uzaktan gerçekleştirilen
ve sistemin tamamen ele geçirilmesi ile sonuçlanan saldırılara sebep olan
açıklıklardır.
-
Kritik
öneme sahip açıklıklar nitelikli saldırgan tarafından uzaktan gerçekleştirilen
ve sistemin tamamen ele geçirilmesi ile sonuçlanan saldırılara sebep olan
açıklıklardır.
-
Yüksek
öneme sahip açıklıklar uzaktan gerçekleştirilen ve kısıtlı hak yükseltilmesi
(mesela, yönetici hakları olmayan bir
işletim sistemi kullanıcısı veya e-posta sahteciliği) veya hizmet dışı kalma
ile sonuçlanan, ayrıca yerel ağdan ya da sunucu üzerinden gerçekleştirilen ve
hak yükseltmeyi sağlayan saldırılara sebep olan açıklıkları içermektedir.
-
Orta
öneme sahip açıklıklar, yerel ağdan veya sunucu üzerinden gerçekleştirilen ve
hizmet dışı bırakılma ile sonuçlanan saldırılara sebep olan açıklıkları
içermektedir.
-
Düşük
öneme sahip açıklıklar ise etkilerinin tam olarak belirlenemediği ve literatürdeki
en iyi sıkılaştırma yöntemlerinin (best practices) izlenmemesinden kaynaklanan
eksikliklerdir.
Güvenlik
testlerinin amacının, kurum tarafından yürütülecek risk analizi çalışmasına
girdi sağlamak olduğu unutulmamalıdır. Bu kapsamda, belirtilen açıklıkların
önem derecesi belirlenirken varlığın değeri dikkate alınmamaktadır. Sadece
açıklığın kullanılma ihtimali ve sistemde bırakacağı etki hesaplanabilir.
Varlık değerlendirmesini yapmak ve bulunan önem derecelerinin onaylanmasını
gerçekleştirmek kurum çalışanlarının ve kurum yönetiminin sorumluluğudur. Diğer
bir deyişle varlık sahipleri, ilgili varlık için belirlenen açıklık önem
derecelerini söz konusu varlığın değerini dikkate alarak tekrar
değerlendirmelidirler. Test raporunda bu konu belirtilmeli ve kapanış toplantısında
da dile getirilmelidir.
Şekil 3. Risk analizi faktörleri
Personelin Uzmanlaşma
Yöntemi Ne Olmalı?
Güvenlik testi gerçekleştiren
firmalardan bazıları çalışanlarını yeni çıkan güvenlik araçlarını, saldırı
tekniklerini öğrenmeye ve saldırı kültürünü yerleştirmeye teşvik ederken,
bazıları da testi gerçekleştirilen varlıklara özel uzmanlaşmayı önemsemekte.
Birinci yöntemi yatayda, ikincisini ise dikey gelişim olarak
nitelendirebiliriz. Tahmin edileceği gibi her iki yöntemin de kendine göre eksiklikleri
bulunmaktadır. Bir güvenlik testçisinin kaliteli sonuçlar üretebilmesi için hem
belirli konularda derinlemesine uzmanlığı olması hem de bilgi güvenliği genel
kültürünü oturtmuş olması gereklidir.
Örneğin, web tabanlı bir
uygulamada tespit edilen bir açıklığın sistemlere olan etkisinin bilinmesi
işletim sistemi seviyesinde bilgi birikimi gerektirir. Ya da daha ötesinde
açıklığı barındıran sunucudan arka planda yer alan ağa ulaşmak, ağ tarama
araçlarının özel kullanımının bilinmesiyle mümkün olabilir. Bu örnekten de
anlaşılacağı gibi açıklıklar ancak derinlemesine bilgiyle ortaya çıkarılırken,
etkilerinin belirlenmesi için güvenlik testi genel kültürüne sahip olunması
şarttır.
Personelimizin
Kendini Geliştirmesine Ne Kadar Önem Veriyoruz?
Özellikle çok yoğun güvenlik
testi gerçekleştirilen ortamlarda personelin kendini geliştirme noktasında
eksik kalması, orta ve uzun vadede eldeki bilginin (know-how) eskimesine ve
ihtiyaçları karşılayamamasına sebep olmaktadır. Bilgi güvenliği, doğası gereği
devamlı yenilenme içerisinde olan bir sektördür. Ortaya çıkan açıklıkların bir
iki sene sonra uygulanamaz olmasının, yeni güvenlik mekanizmalarının
geliştirilmesinin bunda etkisi büyüktür. Özellikle bilgi güvenliği birimlerinde
yöneticilik yapan kişiler bu konuda ileri görüşlü olmak ve personeline yatırım
yapmak mecburiyetindedirler. Bu amaçla yıllık belirli eğitim hedefleri ortaya
konulabilir veya test projelerinin yoğunluğu belirli oranda azaltılarak
personelin literatür taraması yapabilmesine imkan tanınabilir. Kazanılan yeni
test tekniklerinin birim içi oryantasyonlarla kurumsallaştırılması da
başvurulacak etkin yöntemlerdir.
Sonuç
Bu makalede de anlatılmaya
çalışıldığı üzere bilişim güvenliği testleri, sınırları ve kalitesi net olarak
çizilemeyen ve büyük oranda testi gerçekleştiren kişilerin bakış açısına göre şekillenen
projelerdir. Bu noktada, kaliteli çalışmalar yürütme anlamında, bilgi güvenliği
sektörü çalışanlarına önemli görevler düşmektedir. Uzun vadede sektörde kalıcı
olmanın yolu müşteri memnuniyeti ve kapsamlı bilişim güvenliği testleri
gerçekleştirmektir. Bu amaçla performans takibinin yapılması, müşterilerden
geri besleme alınması ve toplanan verinin ışığında "Sürekli İyileştirme Yaşam
Döngüsünün" kurum süreçlerinde yerini alması sağlanmalıdır.
Referanslar
[ 1 ]
Ulusal Bilgi Güvenliği Kapısı, Güvenlik Bildirileri, http://www.bilgiguvenligi.gov.tr
[ 2 ]
Symantec, Internet
Security Threat Report Volume XIII: April, 2008 , http://www.symantec.com
[ 3 ]
IBM, Web
Application Security: Automated Scanning Versus Manual Penetration Testing,
http://www.findwhitepapers.com/whitepaper2810/
[ 4 ]
Brad Arkin, Manual
vs. automated penetration testing, http://searchsoftwarequality.techtarget.com
[ 5 ]
PCI Security Standarts Council, PCI Quick Reference Guide, https://www.pcisecuritystandards.org
Favori olarak ekle (2) | Görüntüleme sayısı: 3526
Sadece kayıtlı kullanıcılar yorum yazabilir. Lütfen sisteme giriş yapın veya kayıt olun. |