Salı, Kasım 14, 2006

Organizasyonları Tehdit Eden Kablosuz Ağ Güvenlik Problemleri

Günümüzde kablosuz ağlar oldukça yaygın biçimde ev, iş, eğitim ve eğlence hayatımızda kullanım imkânı bulmaktadırlar. Özellikle sahip olma maliyetinin düşük olması ve çalışma serbestliği tanıması, pek çok alanda tercih edilen iletişim altyapısı olarak seçilmesine neden olmuştur. Bununla birlikte tasarımında bulunan problemler kullanımını hatta yanında bulunulmasını bile riskli kılmakta ve fiziksel olarak alınan güvenlik önlemlerinin devre dışı kalmasına yol açabilmektedir. Bu sebeple kablosuz ağ alt yapısına sahip olunsun veya olunmasın, söz konusu iletişim şeklinin organizasyon güvenliğini risk altına bırakacağını belirtmek yanlış olmayacaktır. Bu riskler neler olabilir diye düşünüce 4 başlık altında toplanabileceğini düşündüm.

1-Kaçak Kablosuz Ağ Erişim Noktaları

Kablosuz ağ erişim noktaları, kablosuz ağ sisteminin, mevcut kablolu ağ sistemi ile bağlantı kurduğu noktalardır. Bu özel cihazlar sayesinde iki farklı iletim ortamı arasındaki bağlantı sağlanabilmektedir. Firma içine kaçak olarak yerleştirilebilecek bu erişim noktaları, uzaktan firma ağına yetkisiz erişim yapılabilmesine neden olabilir. Bu durum aslında bir zamanlar yerel ağ içinden modemlerin yol açtığı güvenlik riskine oldukça benzemektedir. Genelde kaçak ağ erişim noktaları sisteme kazara entegre edilmektedirler. Örneğin danışmanlık hizmeti verdiğimiz bir müşteride, söz konusu kaçak erişim noktası muhasebe müdürünün odasından çıkmıştı. Bir iş seyahati sırasında kaldığı otelde kullandığı kablosuzu ağ sisteminin sağladığı hareket kabiliyetini görmüş ve bunu IT?ye haber vermeksizin kullanmak istemişti. Yine evinde kablosuz ağ kullanan ve bunun nimetlerini iş yerinde kullanmak isteyen meraklı çalışanlar da benzer güvenlik sorunlarına yol açabilecek girişimlerde bulunabilirler. Tabi kötü niyetli olarak da softap gibi yazılımlar kullanarak da kablosuz ağ erişim noktasının, kablolu ağa dahil edilmesi mümkün olacaktır. Sonuç olarak her iki durumda da güvenlik riski oldukça büyüktür. Bu durum, kablolu ağlar için yapılan onca güvenlik yatırımının ve kontrolünün de boşa çıkmasına neden olabilir. Üstelik bunu gerçekleştirebilmek için firmanın birkaç metre uzağında olmak yeterli olacaktır.

Bu konuda organizasyonlar tarafından yapılan en büyük hata ise kablosuz ağ alt yapısına sahip olmadıklarını düşünerek, bulundukları konumdaki kablosuz ağ trafiğini izlememek veya bu konuda yardımcı olacak güvenlik ürünlerine yatırım yapmamak olmaktadır.

2-Kablosuz Ağ Kabiliyeti Bulunan Taşınabilir Sistemler

Günümüzde pek çok üretici kendilerine gelen talepler doğrultusunda, kablosuz ağ kartlarını tasarladıkları diz üstü bilgisayarlarına entegre etmektedirler. Bugün kablosuz ağ kartı bulunmayan bir diz üstü bilgisayar almak imkansız denebilecek kadar zordur. Firmalar içinde de kablosuz ağ kullanılmasa bile, kablosuz ağ kartlarına sahip pek çok bilgisayar yer almaktadır. Bu bilgisayarlardan birinden yapılacak bir kablosuz erişim isteği, saldırgan tarafından oluşturulmuş sahte erişim noktasına rahatlıkla yönlendirilebilir. Her türlü IP, DNS gibi bilgiler saldırgan tarafından sağlanacağı için kablosuz ağ kartı aktif edilmiş bilgisayara direkt olarak erişim veya hedef bilgisayar tarafından yollanacak bilgilerin tespiti veya değiştirilmesi mümkün olabilir. Üstelik saldırganın bunları yapabilmesi için ise sadece ortamdaki kablosuz ağ trafiğini dinlemesi ve elde ettiği bilgiler doğrultusunda sahte erişim noktaları oluşturması yeterli olacaktır. Bu durum hedef sistemin köprü olarak kullanılarak, bilgisayarın kablosuz ağ kartı üzerinden, firmanın kablolu ağ şebekesine sızılması içinde kullanılabilir. Bir başka risk ise firmanıza komşu diğer firmaların kablosuz ağ sistemine yanlışlıkla bağlanılması olabilir. Her iki durumda da firma ağınıza rahatlıkla yetkisiz erişim gerçekleştirilebilir.


3-Hotspot Erişim Noktaları

Bugün hava alanları, alış veriş merkezleri gibi kamuya açık pek çok noktada kablosuz ağ erişimi gerçekleştirmek mümkün olmaktadır. Ancak bu tip sistemlerde en kolay biçimde bağlantı sağlanılması istenildiği için herhangi bir güvenlik anlamında koruma bulunmamaktadır. Bu durum saldırganlarında bu tip sistemleri sıkça kullanmasına neden olmaktadır. Ortamda taşınan her türlü bilgi şifreleme olmaması sebebi ile ele geçirilebileceği gibi, hotspot ile aynı SSID?ye sahip sahte erişim noktaları oluşturularak, kablosuz ağ kullanıcılarının bu noktalara çekilmesi ve Man-in-the-middle adı verilen saldırıların gerçekleştirilmesi de mümkündür. Firma kullanıcılarınızın bu tip sistemleri kullanarak Internet?e veya firma kaynaklarınıza erişim gerçekleştirmeye çalışması, önemli bilgilerinizin yetkisiz kullanıcılar eline geçmesi ile sonuçlanabilir.

4-Ad-Hoc Bağlantılar

Ad-Hoc herhangi bir kablosuz ağ erişim noktası olmadan iki bilgisayar arasında bağlantı kurmak için kullanılan bağlantı tipidir. Herhangi bir erişim noktası olmadığı için güvenlik önlemi almak oldukça güçtür. Saldırganlar daha önceden oluşturulmuş ve aktif durumda bulunan bu tip ad-hoc bağlantıları kullanarak sistemlere bağlanmaya çalışabilirler.

Yine kablosuz ağ desteği bulunan pek çok yazıcıda ad-hoc bağlantısı hazır halde gelmektedir. Eğer firmanız içinde bu tip yazıcılar var ise, saldırganlar tarafından tespit edilmesi durumunda, yazıcının kablolu ve kablosuz ağ arasında köprü görevi üstlenmesi için kullanılması durumuyla da karşılaşabilirsiniz.

Etiketler:

Devamı

Perşembe, Ekim 26, 2006

Zombiler kalabalığa karışmaya çalışıyor!

Son bir yıl içinde InfoSec alanında en sık duymaya başladığımız kavramlardan biri de zombiler ve botnetler. Çoğu ev kullanıcılarına, ya da üniversite laboratuvarlarına ait olan bu bilgisayarlar, bir şekilde kötü niyetli kişiler tarafından ele geçirilip daha sonra çeşitli dağıtık servis dışı bırakma saldırılarında kullanılmakta ya da para karşılığında kullanım haklarısatılmaktadır.

Bu türden ele geçmiş sistemler otomatik olarak belli bir IRC kanalına gidip orada Botmaster diye tanımlanan efendilerinin komutlarını beklemektedirler. Girişi şifreli olan bu kanallarda bir Botmaster dünyanın herhangi bir yerinden bağlanıp, geride hemen hemen hiçbir iz bırakmadan binlerce bilgisayara aynı anda saldırı emri verebilir.

Yakın zamana kadar bu tür sistemlere karşı başta ISP'ler olmak üzere çeşitli yöntemler geliştirilmişti. Örnek olarak çok da popüler olmayan IRC trafiğinin dinlenmesi ya da botnetlere evsahipliği yaptığından şüphelenilen bazı IRC sunucularına erişimin engellenmesi gibi.

Fakat son bulgular gösteriyor ki, Botmaster'lar da buna karşılık emir vermek için IRC'i kullanmayı bırakıp artık sıradan bir kullanıcı gibi web sitelerini dolaşan, davranışları normal bir kullanıcıdan pek de ayırt edilemeyen bot yazılımları kullanmaya başlamışlar.

Kısaca aramızda zombiler var artık.

Etiketler:

Devamı

Pazartesi, Ekim 16, 2006

Penetrasyon Testlerinin Eksiklikleri

Günümüzde bilgi güvenliği konusunda hassasiyeti olan ve gerekli bütçeyi ayırabilen kurumlar bilgi güvenliği danışmanlığı yapan firmalarla çalışmalar yapmaktadırlar. Bu çalışmalar, penetrasyon testleri (penetration test), bilgi sistemlerinin güvenlik denetimi (security audit), geliştirilen programların kaynak kodlarının güvenlik açısından incelenmesi ve bilgi güvenliği yönetim standardlarının(ISO27001, COBIT vs) kurumda uygulanması gibi konuları içermektedir. Ülkemizde ise bu çalışmaların çoğunluğunu penetrasyon testleri oluşturmaktadır. Diğer taraftan son zamanlarda bilgi güvenliği yönetim sistemi standardlarının kurumda uygulanması konusunda da geliştirilen projelerin sayısı artmaktadır.

Bu yazıda ele almak istenilen konu bilgi sistemlerinin güvenlik açıklıklarının tespit edilmesine yönelik projelerde tercih edilen yöntem olan penetrasyon testlerinin eksiklikleri ve bu testleri de içerisinde barındıran "detaylı güvenlik denetim"lerinin (security audit) tercih edilmesi gerekliliğidir.

Bir çok penetrasyon testi çoğu kişinin bildiği gibi değerlendiricilere sadece IP bilgisi verilerek (ki bazen bu bilgi de verilmeyebiliyor) İnternet?e açık bilgi sistemlerindeki açıklıkların İnternet üzerinden sınırlı bir zaman aralığında test edilmesi şeklinde gerçekleştirilmektedir. Bu çalışmalarda temel mantık ?Acaba İnternet üzerinden bir saldırgan veya saldırganlar sistemlerimize neler yapabilir?? sorusuna cevap aramaktır. Bazen iç tehditlerin de tespit edilmesi amacıyla kurum içerisinde herhangi bir hakkı olmayan, sadece değerlendiricilere bağlanabilecekleri bir IP numarasının verildiği penetrasyon testleri de gerçekleştirilmektedir. Yukarıda ifade edilen "detaylı güvenlik denetimi"nden kasıt ise değerlendiricilerin hem sistemleri uzaktan test etme yetkisine sahip olarak çalışabilmesi (mesela, gerekli kullanıcı profillerinin sağlanması), hem de sistemlerin konfigürasyonlarını inceleyebilecekleri bir ortamın oluşturulmasıdır.

Kurumlarca penetrasyon testlerinin tercih edilmesinin bir kaç sebebi vardır. İlk sebep, kurumların öğrenmek istedikleri noktanın "Acaba İnternet üzerinden bir saldırgan veya saldırganlar bizim sistemimize ne yapabilir?" sorusuna cevap aramakla sınırlı olmasıdır. Bu soru bilgi güvenliği ile ilgili duyarlılığın ilk seviyesini oluşturmaktadır. Bu seviyede iç tehditler, ki değişik çalışmalar iç tehditlerden dolayı ortaya çıkan güvenlik olaylarının önemli bir yer tuttuğunu göstermektedir [1, 2], göz ardı edilmektedir. İç tehditler kapsamında, sistem üzerinde değişik seviyede yetkisi olan kişilerin bilinçli ya da bilinçsiz olarak gerçekleştirebilecekleri davranışların etkileri incelenir. Özellikle bilinçsiz davranışların etkilerinin gerçekten çok fazla olduğu gözlenmekte ama bu etkilerin kayıt altına alınmaması ve bilinçli davranışlar kadar çok yankı uyandırmaması nedeniyle çoğunlukla göz ardı edilmektedir. Penetrasyon testleri, ifade edilen kapsamdaki iç tehditleri tespit etmezler. Değerlendiricilere kurum içinden bağlanma hakları verilmesi durumunda bile penetrasyon testleri yetersiz kalmaktadır. Aslında yapılan penetrasyon testleri sonuçları "Acaba İnternet üzerinden bir saldırgan veya saldırganlar bizim sistemimize ne yapabilir?" sorusuna da tam cevap veremeyebilirler. Çoğunlukla değerlendiriciler, sınırlı zamanda bir çok IP numarasını kara kutu (black box) mantığıyla ele alarak test ederler. Oysa bir saldırganın (çoğunlukla) zamanı sınırlı değildir ve hedefinde bir çok IP numarası olmayabilir. Hedefini tam belirlemek için bir çok IP arasından seçme işlemi yapabilir ama nitelikli bir saldırganın bu işlemin sonunda odaklandığı bir ya da bir kaç IP olacaktır. Dolayısıyla penetrasyon testleri söz konusu kısıtlar altında beklentilerin ancak belli bir bölümünü karşılayabilirler.
Penetrasyon testlerinin tercih edilmesindeki sebeplerden birisi test eden firmaya tam olarak güvenememektir. Kurumlar arası güvenin az olduğu ülkemizde kurumlar karşı tarafa mümkün olan en az bilgiyi (sadece IP bilgileri ki zaten bu bilgiler de rahatlıkla bulunabilir) vererek bir güvenlik testi yaptırmak istemektedirler ki bu amaç için penetrasyon testleri uygundur. Ama gerçekten kurumlar kendi güvenlik eksikliklerini tam tespit ettirmek istiyorlarsa güvenebilecekleri bir kuruma sistemlerin konfigürasyonlarının da inceletebilecekleri bir güvenlik denetimi yaptırmalıdırlar. Söz konusu denetimde bazı kurallar konarak ek tedbirler alınabilir. Örneğin değerlendiricilere sistem yöneticisi hakkıyla değil sadece okuma hakkıyla sistemlere bağlanma hakkı verilebilir. Bazı kritik konfigürasyon bilgileri anonim hale getirilerek değerlendiricilere farklı ortamlarda (kağıt ortamında, konfigürasyonların enstantane resimleri (snapshot) halinde vs..) verilebilir. Hatta söz konusu kayıtların incelenmesinin sadece kurum ortamında yapılması ve incelemeden sonra değerlendiricilere herhangi bir bulgunun verilmemesi sağlanabilir.

Penetrasyon testlerinin tercih edilmesindeki başka bir sebep kurumun kendi sistemlerine tam güvenememesidir. Eğer söz konusu güvenlik test projesi üst yöneticilerin zorlaması ile yapılıyorsa bilgi sistemini yöneten kişiler ya da bilgi sistemlerin güvenliğinden sorumlu kişiler güvenlik projesinin kapsamını mümkün olduğunca daraltmaya çalışabilmektedirler. Penetrasyon testi de bu durumda tercih sebebi olabilmektedir. Güvenlik test projesi fikrinin üst yönetimden gelmediği bizzat bilgi güvenliğinden sorumlu kişilerin teklifi ile oluştuğu durumlarda da ilgili kişiler kendi sistemlerine güvenmeme ama aynı zamanda eksikliklerini de tespit ettirme ikileminde kalarak nispeten dar kapsamlı olan penetrasyon testlerini tercih etmektedirler. Aslında bu durum bilgi sistem organizasyon yapısından kaynaklanan bir problemdir. Ülkemizde kurumlardaki bilgi güvenliği departmanları çoğu zaman operasyonel hizmetler de (güvenlik duvarları, IPS yönetimi, kayıt alma mekanizmalarının kurulması) görebilmektedirler. Bu durumda güvenlik testi projesini yaptıran birimler aynı zamanda kendi eksikliklerinin de bulunmasını talep etmiş bulunmaktadırlar. Her birimin kendi eksikliklerinin bulunmasını talep etme özgüvenine sahip olması beklenmemelidir. "Görevler ayrılığı" ilkesi bu durumları ortadan kaldırmak için vardır. Söz konusu operasyonel hizmetler diğer operasyonel birimlerinin işi olmalı ve bilgi güvenliği departmanları sadece izleme ve denetleme fonksiyonunu icra etmelidir. Danışmanlık firmalarından alınan güvenlik testi projesini de yöneten söz konusu bilgi güvenliği departmanları olmalıdır. Ayrıca bilgi güvenliği departmanlarının "denetleme" konusunda bağımsızlığı sağlanmış olmalıdır. Böyle bir ortamda bilgi güvenliği departmanı bilgi güvenliği testini mümkün olan en geniş kapsamda ele almaya çalışacaktır.

Yukarıda penetrasyon testlerinin tercih sebeplerine ve bu sebeplere kaynaklık eden problemlerin nasıl çözümlenebileceğine değinmeye çalıştım. Şimdi de penetrasyon testlerinin genel eksikliklerine değinmek istiyorum.

Güvenlik testlerinde hedeflenen temel üç nokta sistemde herhangi bir açıklığın tespit edilmesi, bu açıklığın tam olarak var olduğunun belirlenmesi ve söz konusu açıklığın sisteme etkisinin gözlenmesidir. Güvenlik testlerinin temel çıktıları ise açıklıklar ve açıklıkların kritiklik dereceleridir. Yapılan çalışmanın bir açıklık değerlendirilmesi (vulnerability analysis) olduğu varsayılırsa bu çalışmalarda kritiklik derecesi, açıklığın sisteme olan etkisine göre belirlenir. Güvenlik testlerinin başarısı, gerçekte açıklık olmadığı halde açıklık olarak tespit edilen bulguların azlığı (hatalı pozitif - false positive) ve gerçekte var olan ama değerlendirici tarafından tespit edilemeyen açıklıkların azlığı (hatalı negatif-false negative) ile ölçülebilir. Ayrıca bulunan açıklıkların kritiklik derecesini sağlıklı olarak tahmin edebilmek de testlerin başarısındaki diğer önemli etkendir.

Penetrasyon testlerinin açıklık tespit edilmesi aşamasında baştan tam kapsayamadığı ana açıklık grubu lokal açıklıklardır. Değerlendiriciler, test ettikleri servislerin ya da işletim sistemlerinin ne olduklarını ve versiyonlarını tespit ettiler ise bazı lokal açıklıkların olabileceğini tahmin edebilirler. Fakat bu açıklıkların tam olarak var olduğunu ve sisteme olan etkisini tespit edemezler. Ancak uzaktan sistemde kısıtlı bir hak elde etmişler ise söz konusu lokal açıklıkları teyit etme ve etkilerini inceleme imkanına sahiptirler. Bu imkana ulaşamadılarsa ki ulaşamama ihtimali yüksektir, olabileceğini düşündükleri lokal açıklıklar sadece tahmin aşamasında kalmaktadır. Tahmin edilen bir bulgunun da test raporuna yazılması konusunda değerlendiriciler ikileme düşerler. Eğer söz konusu bulgu rapora yazılırsa karşı tarafa hatalı pozitif (false positive) bir bulgu verme olasılığı çok yüksektir. Eğer yazmazlar ise test çalışmasının hatalı negatif (false negative) oranının artma ihtimali söz konusudur. Gerçekten söz konusu açıklık sistemde varsa ve değerlendiriciler bu açıklığı rapora yazacaklar ise bu sefer açıklığın etkisini tam ölçemediklerinden açıklığa yanlış kritiklik derecesi verme olasılıkları çok yüksektir.

Yukarıda bahsettiğim lokal açıklıklar için geçerli olan açıklığın tam olarak varolduğunun onaylanamaması ve etkisinin belirlenememesi aslında çoğu uzaktan kullanılan açıklıklar için de geçerlidir. Dolayısıyla penetrasyon testi yapan kişiler ne kadar uğraşırlarsa uğraşsınlar, çalışmalarındaki hatalı pozitif bulgu bulma, hatalı negatifleri tespit edememe ve hatalı kritiklik seviyesi belirleme problemlerini aşamayacaklardır. Bu problemler de çalışmanın kalitesini düşürecektir. Oysa sistemlere ve sistem bilgilerine erişilerek yapılan güvenlik denetimlerinde ifade edilen problemlerin minimum hale getirilebilme şansı vardır.

Bilgi güvenliği sağlamada aslında iç içe geçen korunma mekanizmalarından faydalanılmaktadır. Örneğin, güvenlik duvarları sistemler üzerinde erişilebilecek portları kısıtlayarak saldırganların kullanabilecekleri saldırı yüzeyini azaltırlar. Saldırı önleme sistemleri, güvenlik duvarı tarafından izin verilen ağ trafiği içerisinde bulunabilecek saldırıları engellemeye çalışırlar. Host tabanlı saldırı tespit sistemleri lokalden veya uzaktan üzerinde yüklenmiş oldukları sistemlere olan saldırıları tespit ederler. Öbür taraftan sistemlerin yamaları güncellenerek güvenlik duvarını ve saldırı önleme sistemlerini atlayabilen saldırılara karşı korunma sağlanır. Sistem konfigürasyonlarında yapılan ayarlarla saldırgan sisteme kısıtlı bir hakla erişse bile sistem üzerinde tam yetkili bir kullanıcı olması engellenir. Bu tür bir konfigürasyona örnek web sunucu servislerinin sınırlı yetkiye sahip (sadece html dosyalarını okuyan, çalıştırılabilir dosyaları sadece çalıştırma hakkına sahip olan) bir kullanıcı hesabıyla çalıştırılmasıdır. Penetrasyon testlerinde test edilen nokta, tüm bu mekanizmaların hepsinin birden çökertilip çökertilemeyeceğidir. Oysa güvenlik testlerinde her bir mekanizmanın kuvvetliliği ayrı ayrı test edilebilmelidir. Bu da ancak sistem bilgilerine de erişilebilen, istenilen güvenlik mekanizmasına erişme hakkı verilen detaylı bir güvenlik denetimi ile mümkündür.

Penetrasyon testi gerçekleştirenlerin karşılaştığı problemlerden birisi de karşı sistemlere önemli zararlar verme olasılığıdır. Çoğunlukla danışman firmalar ile yapılan sözleşmelerde danışman firmalardan penetrasyon testi yapılması fakat sistemlere zarar verilmemesi istenmektedir. Değerlendiriciler bu durumda yine büyük bir ikilemde kalmaktadırlar. Var olduğu konusunda şüphelendikleri ama sisteme zarar verme ihtimali olan saldırıları deneyip denememe konusunda karar verememekte ve çoğunlukla risk almayıp ya söz konusu açıklığı raporlarına yazmamakta ya da hatalı pozitif olma ihtimali olan bu açıklığa raporlarında yer vermektedirler. Sistem konfigürasyon bilgilerine ulaşılarak yapılan testlerde açıklıkların var olma bilgisinin garanti edilmesi daha kolay gerçekleştirilebilmekte ve etkilerinin tahmin edilebilirliği daha fazla olmaktadır.

Penetrasyon testlerinin sistem güvenliğinin kontrol edilmesinde önemli bir yeri vardır ama yukarıda ifade edilen eksiklikleri nedeniyle detaylı güvenlik denetimleri tercih edilmelidir. Hatta son yıllarda gelişmiş ülkelerde detaylı güvenlik denetimlerinin daha da ilerisinde açıkların çoğunun geliştirilen uygulamalarda (özellikle web uygulamalarında) olduğu gerçeğine dayanılarak uygulamaların kaynak kodlarının güvenlik açısından değerlendirilmesi de önemli bir unsur haline gelmiştir. Kredi kartı bilgisi işleyen kuruluşlar için oluşturulan PCI (Payment Card Industry) standardının yeni versiyonunda (versiyon 1.1) web uygulama yazılımlarının kaynak kodunun incelenmesinin gerekliliği ile ilgili madde konmuştur. Dünyada trend kaynak kodlarının incelenmesine kayarken yapılan güvenlik testleri penetrasyon testleri ile sınırlandırılmamalıdır.

[1] http://www.schneier.com/blog/archives/2005/12/insider_threat.html,
[2] http://www.cert.org/insider_threat/insidercross.html
[3] https://www.pcisecuritystandards.org/pdfs/pci_dss_v1-1.pdf



Hayrettin Bahşi

Uzman Araştırmacı
TÜBİTAK-UEKAE

Etiketler:

Devamı

ISO 27001 Bilgi Güvenliği Sertifikasyonları