Netscaler Application Firewall

advertisement
Netscaler Application Firewall
Web Uygulama Güvenliği
Web Uygulama güvenliği, HTTP ve HTTP prorokolü kullanarak iletişim kuran programlar ve
bilgisarlar için network güvenliğidir. Bu, güvenlik eksikliklerinin ve zayıflıklarının bol olduğu
oldukça geniş bir alandır. Sunucu ve istemci’lerin her ikisi üzerinde ki işletim sitemleri güvenlik
sorunları ve saldırlara karşı savunmasızdır. CGI, Java, JavaScript, Perl ve PHP gibi
teknolojilerini sağlayan web sunucu yazılımları ve web siteleri, altlarında yatan bu teknolojiler
nedeniyle güvenlik açıkları barındırır. Bu teknolojilerle oluşturan web uygulamaları ile iletişim
kuran tarayıcılar ve diğer istemci uygulamalar da güvenlik açıkları barındır. Ziyaretçilerle
etkileşim kurmayı sağlayan ve bu teknolojilerden herhangi birini veya en basitinden HTML
kullanan web siteleri çok sıklıkla güvenlik açıkları barındırır.
Geçmişte, bir güvenlik ihlali çok sıklıkla sadece rahatsız ediciydi. Fakat bügün nadiren can
sıkıcı olup çoğunlukla büyük bir güvenlik sorunu. Örneğin bir hacker’ın bir web sunucusuna
erişim kazanandığı ve web site’sine yetkisiz değişiklikler yaptığı saldırılar yaygın olarak
kullanılıyor. Bu ataklar genelde hünerlerini diğer hacker’lara göstermek veya hedeflerinde ki kişi
ve şirketleri utandırmaktan başka motivasyonu olmayan hacker’lar tarafından başlatılıyordu.
Halbuki şu an en güncel güvenlik ihlalleri, motivasyonarını para kazanma isteğinden alıyor.
Saldırıların büyük çoğunluğu hassas ve potansiyel olarak değerli kişisel bilgileri ele geçirmek
veya web site ve web sunucularına yetkisiz erişim sağlayarak kontrollerini ele geçirmek için
yapılıyor.
Web saldırılarının bazı formları kişisel bilgileri ele geçirmek üzerine yoğunlaşır. Bu atakların
çoğunluğu bir saldırganın bütün kontrolü ele geçirmesini önlebilecek yeteri derecede güvenli
olan web site’lerine karşı yapılıyor. Saldırganın bir web sitesinden elde ettiği bilgiler, müşteri
isimleri, adresleri ,telefon numaraları, sosyal güvenlik numaraları, kredikart numaraları, hastane
kayıtları ve diğer kişisel bilgiler olabilir. Saldırgan bu bilgileri kullanabilir veya onları başkalarına
satabilir. Böyle saldırılarla elde edilen bilgilerin çoğu yasalarla korunur. Bu tip ihlaller kişisel
bilgilerinin gizliliği ihlal edilen müşteriler için oldukça ciddi sonuçları doğurabilir. En iyi ihtimalle
bu müşteriler kredikartlarının kötüye kullanılmasını, onların isimleriyle yetkisiz kredi hesapları
açılmasını veya açıkca kimliklerinin çalınmasını önlemek için titiz davranmak zorunda
kalabilirler. En kötü ihtimalle berbat kredi borcu ile karşı karşıya kalabilirler veya bir parçası
olmadıkları kiriminal aktiviteler için bile suçlanabilirler.
Web saldırıları, bir web sitesi veya web sitesinin üzerinde çalıştığı sunucu veya her ikisini
kontrol etme amacı güder. Sunucu veya bir web sitesinin kontrolünü ele geçiren bir hacker bu
kontrolü, yasak içerikleri tutmak, başka bir sunucuda bulunan içerikler için proxy gibi
davranmak, toplu e-mail’ler göndermek için SMTP hizmetlerini kullanmak veya gizliliği ihlal
edilmiş başka web sunucuları üzerinde ki bu tür faliyetleri desteklemek için DNS hizmetlerini
sağlamak için kullanabilir. Güvenliği ihlal edilen web suncuları üzerinde bulunan web sitelerinin
çoğu şupe uyanduran ve düpedüz sahte işletmelerin reklamını yapabilirler. Örneğin, edolandırıcılık web sitelerinin ve çocuk istismarı yapan web sitelerinin çoğunluğu güvenliği ihlal
edilmiş bu web sunucularının üzerinde bulunur.
Web sitelerinizin ve web hizmetlerinizin bu saldırılara karşı korunması, bilinmeyen saldırılara
kaşı koruma ve karakteristik olarak teşhis edilebilen bilinen atakları bloklama yeteneğinin her
ikisini barındıran çok katmanlı bir savunmayla mümkündür.
Bilinen Web Atakları
Whitehat Website Güvenlik Açığı olasılıkları Raporu 2015
Web sitelerinin savunmasının ilk hattı web güvenlik uzmanları tarafından analiz edilmiş ve
incelenmiş ve varolduğu bilinen çok sayıda ki saldırılara karşı korumadır. HTML tabanlı web
sitelerine yapılan genel saldırı türleri aşağıdakileri içerir.
Buffer overflow atakları. Web sunucusu veya üzerinde koştuğu işletim sisteminin
kilitlenmesi, çökmesi veya işletim sitemine saldırganının yetkisiz erişim sağlamasına
umuduyla aşırı boyuttu uzun URL, aşırı boyutta uzun cookie veya başka aşırı boyutta uzun
bit bilgisinin bir web sunucusuna gönderilmesidir. Buffer overflow saldırısı bilgilere yetkisiz
erişim kazanmak, bir web sunucusunun güvenliği ihlal etmek veya her ikisi içinde
kullanılabilir.
o Cookie security atakları. Genellikle sahte kimlik bilgileri kullanarak yetkisiz içeriğe erişim
elde etme umuduyla değiştirilmiş bir cookie’nin bir web sunucusuna gönderilmesidir.
o Forceful browsing. Anasayfa üzerinde ki hyperlink’ler veya web sitesi’inde yaygın diğer
start URL’ler aracılığıyla bu URL’lere gitmeden bir web sitesi üzerinde ki URL’lere doğrudan
erişilmesidir. Forcefull browsing’in özgün örneklerinde biri web sitenizin bir sayfasını
bookmark olarak eklemiş bir kullanıcının site üzerinde ki varolmayan bir içeriğe veya
varolan doğrudan erişim izni olmayan bir içeriğe tekrar tekrar erişimde bulunmasıdır. Çok
sıklıkla bu gibi bir durum web site güvenliği üzerinde bir saldırıyı betimler. Forcefull
browsing genellikle yetkisiz bilgilere erişim kazanmak için kullanılır. Ayrıca suncuların
gizliliğini ihlal etme teşebüsünde buffer overflow saldırısıyla birleştirilebilir.
o Web form güvenlik atakları. Web formu içerisinde web sunucunuza uygun olmayan içerik
gönderilmesidir. Uygun olmayan içerik, değiştirilmiş gizli alanları, sadece alfanümerik veri
için tasarlanan bir alanda yazılımsal kod veya HTML’i, sadece kısa bir string kabul eden bir
alanda aşırı derecede uzun bir string’i, web sitenizin bu web formunda almayı ummadığı
çok çeşitli diğer verileri içerir. Web form güvenlik saldırları, web sitenizden yetkisiz bilgileri
elde etmede veya açıkca web sitesinin gizliliğini ihlal etmede, genellikle buffer overflow
saldırısıyla birleştirilerek kullanılır.
o
Web form güvenliğine yönelik saldırıların iki özel türününden özel olarak bahsetmesi gerekiyor:
o
o
SQL injection atakları. SQL veritabanında SQL komutlarının çalıştırılması hedefiyle bir
web formunda veya URL’in bir parçası olarak aktif SQL komutların gönderilmesidir. SQL
injection saldırıları genellikle yetkisiz bilgi elde etmek için kullanılır.
Cross-Site scripting saldırıları. Bir script’in, bulunduğu web sitesi dışında ki bir web sitesi
üzerinde bulunan herhangi bir içeriği değiştirmesini engelleyen ve same-origin kuralı olarak
adlandırılan kuralı ihlal etmek için bir web sayfası üzerinde bir script veya URL kullanımıdır.
Script’ler bilgi ele geçiribildiğinden ve web istesinde ki dosyaları değiştirebildiğinden ötürü
başka bir web sites’sinde ki içeriğe bir script’in erişimine izin vermek saldırgan’ın yetkisiz
bilgileri ele geçirmesine, bir web sunucusunun gizliliğinin ihlal edilmesine veya her ikisine
olanak sağlar.
XML tabanlı web hizmetlerine karşı saldırılar genellikle takip eden iki kategoriden enaz birinde
yeralıyor: Bir web servisine uygun olmayan içerik gönderilmesi teşebbüsü veya bir web hizmeti
üzerinde güvenlik ihlaline teşebbüs edilmesi. XML tabanlı web hizmetlerine karşı yapılan genel
atak türleri aşağıdakileri içerir.
o
o
o
Kötü niyetli kod veya nesneler. Ya doğrudan hashas bilgilerin elde edilebielceği ya da
saldırgana web hizmetlerinin veya altında ki sunucunun kontrolünü alabileceği nesneleri ve
kodları içeren XML istekleridir.
Badly-formed XML request. W3C XML tanımlamalarına uymayan XML istekleridir. Bu
durum bu nedenle güvensiz web hizmetlerinde güvenliği ihlal edebilir.
Denial of service (Dos) saldırıları. Hedefteki web hizmetini çok yoğun ve baskılı bir
şekilde boğmak niyetiyle yüksek yoğunlukta ve aralıksız olarak XML isteklerinin
gönderilmesi ve web hizmerlerine meşru kullanıcı erşimlerinin engellenmesidir.
Standard XML tabanlı ataklara ek olarak , XML web hizmetleri ve Web 2.0 siteleride SQL
injection ve cross-site scripting ataklarına karşı aşağıda açıklandığı gibi savunmasızdır.
o
o
SQL injection atakları. SQL veritabanının bu komutları çalıştırması amacıyla XML isteleri
içerisinde aktif SQL komutlarının gönderilmesidir. XML SQL injection ataklarıda HTML SQL
injection atakları gibi genellikle yetkisiz bilgileri elde etmek için kullanılır.
Cross-site scripting atakları. Bir script’in, bulunduğu uygulama dışında ki farklı bir
uygulama üzerinde ki herhangibir içeriği değiştirmesini engelleyen ve same-origin kuralı
olarak adlandırılan bu kuralı ihlal etmek için XML tabanlı uygulama içerisinden bir script
kullanımıdır. Script’ler bilgi ele geçiribildiğinden ve XML uygulamanızı kullanarak dosyaları
değiştirebildiğinden ötürü başka bir uygulamaya ait olan bir içeriğe bu script için erişim izni
vermek saldırgan’ın yetkisiz bilgileri ele geçirmesine, uygulamanın gizliliğinin ihlal
edilmesine veya her ikisine olanak sağlar.
Bilinen ataklar genellikle belirli bir atak için daima aşikar olan belirli karaktiristikler (signature)
için web site trafiği filitre edilerek durdurulabilir. Bu yaklaşım göreceli olarak daha az kaynağa
ihtiyaç duyması ve yine göreceli olarak daha az false-positive içermesi nedeniyle avantajlara
sahiptir. Bu nedenle imzalar (signature) web hizmetleri ve web sitelerine yapılan saldırlara karşı
koymada değerli bir araçtır. Ve en çok bilinen web saldırılarının engelleyen temel imzaların
konfigürasyonunun yapılmasıda oldukça kolaydır.
Bilinmeyen Web Atakları
Web siteleri ve uygulamalarına karşı en büyük tehtitler bilinen ataklardan ziyade bilinmeyen
ataklardan gelir. Bilinmeyen atakların çoğu bu iki kategoriden birinde yeralır: henüz güvenlik
firmalarının etkili bir savunma geliştirmediği yeni başlatılan ataklar (zero day ataklar) ve çoğu
web hizmetleri veya web sitelerinden ziyade belirli web hizmetlerine veya web sitelerine
yöneltilen dikkatlice planlanmış ataklar (spear ataklar). Bu ataklar bilinen ataklarda olduğu gibi
genellikle web site veya web hizmetlerin gizliliğini ihlal edilmesi, hassas kişisel bilgileri elde
edilmesi ve bu bilgileri başka ataklar için kullanmaya yöneliktir.
Zero-day ataklar bütün kullanıcılar için major bir tehtittir. Bu ataklar genellikle bilinen ataklarla
aynı türdendir; zero-day ataklar çok sıklıkla injected SQL, cross-site script, cross-site request
forgery veya bilinen ataklara benzer başka tür atakları içerir.
Çoğu durumda hedefte olan yazılımların, web hizmetlerin veya web sitelerin geliştiricilerinin
daha farkına varmadığı veya henüz öğrendikleri zayıf noktaları hedef alırlar. Güvenlik firmaları
bu nedenle bu ataklara karşı savunma daha geliştirmemiş ve geliştirmiş olsalar bile kullanıcılar
genellikle yamaları temin edememiş ve kuramamış veya bu ataklara karşı korunmak için gerekli
çözümler geliştirmemişlerdir. Zero-day atakların ifşa edilmesi ve buna karşı savunma
geliştirilmesi arsında ki zaman (the vulnerability window) daralır fakat saldırganlar ataklara karşı
belirli bir koruma eksiği olan çoğu web hizmeti ve web sitesinde halen saatleri veya günleri bile
hesap eder.
Spear atakları daha çok seçkin bir grup kullanıcı için major bir tehtittir. Spear atakların yaygın
bir türü olan spear phish genellikle belirli bir banka veya finansal kurumum müşterilerini veya
daha az sıklıkla belirli bir şirket veya organizasyonun çalışanlarını hedef alır. Finansal kurumun
veya bankanın asıl iletişimiyle herhangi aşınalığı olan bir kulanıcının genellikle kabaca yazılan
sahte belgelerin aksine spear phish türü e-mail’ler mükemmel yazılmış ve oldukça ikna edicidir.
Bu e-mail’ler ilk bakışta hiçbir yabancının bilemeyeceği ve elde edemeyeceği kişiye özel bilgiler
içerebilir. Bu nedenle bir spear phisher, hesapları boşaltmak , diğer kaynaklardan illegal para
elde etmek veya başkalarına erişim elde etmek, daha fazla hasssas bilgi kazanmak için bile
istenilen bilgileri, hedefindekinin sağlaması için ikna edebilir.
Bu tür atakların her ikiside standart imzalarda olduğu gibi belirli karakteristikleri arayan statik
paternleri kullanmasada genellikle tespit edilebilen bazı katakteristik özeliklere sahiptirler.
Bu tür atakları tespit edilmesi heuristic filitreleme ve pozitif güvenlik model sistemlerinde olduğu
gibi daha karmaşık ve daha fazla kaynak gerektirir. Heuristic filitreleme belirli bir patern yerine
davranış patern’i arar. Positif güvenlik sistem modelleri korudukları web sitelerinin ve web
hizmetlerinin normal davranışını modeller ve sonra normal kullanım modeline uymayan
bağlantıları bloklar. URL ve web-form tabanlı güvenlik kontrollleri web sitelerinizin normal
kullanımının profili çizer ve anormal veya beklenmeyen trafiği bloklamak için positif ve heuristic
güvenlik modellemelerinin her ikiside kullanarak kullanıcıların web sitelerinizle nasıl etkileşime
gireceğini kontrol eder. Uygun şekilde tasarlanmış ve konuşlandırılmış heuristic ve pozitif
güvenlik modellerinin ikiside imzaların kaçırdığı atakların çoğunu yakalayabilir. Bu arada bu
güvenlik modelleri imzalara nazaran daha fazla kaynağa ihtiyaç duyar ve false pozitif’lerden
kaçınmak için uygun bir şekilde ayaranmaları için biraz zaman harcanmalıdır. Heuristic ve pozitif
güvenlik modelleri öncelikli olarak ön sıra savunma hatları için değilde genelde imzalara veya
diğer az kaynak gerektiren yaklaşımlara yedek olarak kullanılır.
Bu yazı dizisinde Netscaler Application Firewall üzerinde imzalara ek olarak bu gelişmiş
korumaları yapılandırarak, bilinmeyen ve bilinen atakların her ikisine karşı kapsamlı bir koruma
sağlamak için application firewall’u yapılandırmayı ve doğru bir biçimde etkinleştirerek hybrid
güvenlik modelininin uygulanması anlatılacak. Bu kapsamda bir sonra ki makale’de HTML
Cross-Site Scripting korumasının Netcaler Application Firewall üzerinde nasıl efektif bir şekilde
yapılandırılacağına değineceğiz.
Download