Web Uygulama Güvenliği [EP-1]

Bu yazımda size web uygulama güvenliğinin ne demek olduğunu anlatmak istiyorum. Bölüm şeklinde bir anlatım olacaktır. Umarım sizlere birşeyler öğretebilirim, bunun için klavyemin başına geçiyorum 🙂 Iyi okumalar…

Bu makaleyi okuduktan sonra neler öğreneceğim?

  • Web Uygulama güvenliğinin ne demek olduğunu öğreneceksin.    
  • Web uygulama güvenliği ile ilgili temel kavramları öğreneceksin.
  • Yaygın olan zafiyetleri öğreneceksin.
  • Web tabanlı yazılımına gelen saldırıları azaltabileceksin.

Web uygulama güvenliği, web tabanlı herhangi bir işin merkezi bir bileşenidir. İnternetin küresel yapısı, farklı konumlardan ve çeşitli ölçek ve karmaşıklık düzeylerinden saldırıya yönelik web mülklerini ortaya çıkarmaktadır. Web uygulama güvenliği, özellikle güvenlikle ilgili web siteleri, web uygulamaları ve API’ler gibi web hizmetleriyle ilgilidir. Yani bir e-ticaret sitenizin olduğunu varsayarsak ve sitene girenler kredi kartıyla alışveriş yaparsa ve bu kişinin kredi kartı numarasını şifresinin güvenliğini sağlamak sizin sorumluluğunuzdur. Üçüncü şahıslar tarafından kişilerin özel bilgilerine erişilebiliniyorsa sistenizin güvenli olduğu söz konusu bile olamaz.

Web sitesi açıkları nelerdir?

Web uygulamalarına yönelik saldırılar, hedeflenen veritabanı işlemlerinden büyük ölçekli ağ kesintilerine kadar çeşitlilik gösterir. Yaygın olarak kullanılan saldırı ya da “vektörler” in bazı ortak yöntemlerini inceleyelim.

  • Çapraz site komut dosyası oluşturma (XSS) – XSS, bir saldırganın önemli bilgilere doğrudan erişmek, kullanıcıyı taklit etmek veya kullanıcının önemli bilgileri açığa vurmasını sağlamak amacıyla istemci tarafında bulunan komut dosyalarını bir web sayfasına enjekte etmesine olanak veren bir güvenlik açığıdır.
  • SQL injection (SQi) – SQi, bir saldırganın bir veritabanının arama sorgularını yürütme biçimindeki güvenlik açıklarından yararlandığı bir yöntemdir. Hackerlar, yetkisiz bilgilere erişmek, yeni kullanıcı izinlerini değiştirmek veya oluşturmak veya hassas verileri manipüle etmek veya yok etmek için SQi’yi kullanır.
  • Hizmet reddi (DoS) ve dağıtılmış hizmet reddi (DDoS) saldırıları – Çeşitli vektörler sayesinde, saldırganlar hedeflenen bir sunucuyu veya çevresindeki altyapıyı farklı türlerde saldırı trafiği ile yükleyebilir. Bir sunucu artık gelen istekleri etkili bir şekilde işlemeyi başaramadığında, yavaş davranmaya başlar ve sonunda tüzel / gerçek kullanıcılardan gelen taleplere hizmet reddedilir.
  • Bellek bozulması – Bellek bozulması, bellekteki bir konumun istenmeden değiştirilip, yazılımda beklenmeyen davranışların ortaya çıkmasıyla sonuçlanır.
  • Arabellek taşması(buffer overflow– Arabellek taşması, belleğin bellekte tanımlanmış bir belleğe veri yazması sırasında oluşan bir anormalliktir. Tamponun kapasitesinin taşması, verilerin üzerine yazılacak olan bitişik bellek konumlarıyla sonuçlanır. Bu davranış, kötü amaçlı kodun belleğe enjekte edilmesi, potansiyel olarak hedeflenen makinede bir güvenlik açığı oluşturması için kullanılabilir.
  • Siteler arası talep sahteciliği (CSRF) – Çapraz site talebi sahteciliği, mağdurun kimlik doğrulamasını veya yetkilendirmesini kullanan bir istekte bulunmak için kandırılmasını içerir. Bir kullanıcının hesap ayrıcalıklarından yararlanarak, bir saldırgan kullanıcı olarak maskelenen bir istek gönderebilir. Bir kullanıcının hesabı ele geçirildikten sonra, saldırgan önemli bilgileri genişletebilir, yok edebilir veya değiştirebilir. Yöneticiler veya yöneticiler gibi yüksek düzeyde ayrıcalıklı hesaplar genellikle hedeflenir.
  • Veri ihlali – Belirli saldırı vektörlerinden farklı olarak, bir veri ihlali, hassas veya gizli bilgilerin açığa çıkmasına atıfta bulunan genel bir terimdir ve kötü niyetli eylemlerle veya yanlışlıkla gerçekleştirilebilir. Veri ihlali olarak kabul edilen kapsamın içeriği oldukça geniştir ve milyonlarca açık, kullanıcı hesabına kadar çok değerli kayıtlardan oluşabilir.

N O T : Yukarıdaki zafiyetlerin detaylarını uygulamalı bir şekilde EP-2’de anlatacağım. Takip etmeyi unutmayın 🙂

Evet… Şimdi ki konumuz;

Güvenlik açıklarını azaltmak için neler yapmalıyız?

Web uygulamalarını istismardan korumaya yönelik önemli adımlar arasında güncel şifrelemenin kullanılması, doğru kimlik doğrulaması gerektirmesi, keşfedilen güvenlik açıklarının sürekli olarak yamalanması ve iyi yazılım geliştirme hijyeni bulunması yer alır. Gerçek şu ki, akıllı saldırganlar oldukça sağlam bir güvenlik ortamında bile güvenlik açıklarını bulabilirler.

Bir web uygulaması güvenlik duvarı veya WAF(Web Uygulama Güvenlik Duvarı), bir web uygulamasını zararlı HTTP trafiğine karşı korumaya yardımcı olur . Hedeflenen sunucu ile saldırgan arasında bir filtreleme engeli yerleştirerek, WAF çapraz site sahteciliği, çapraz site komut dosyası ve SQL enjeksiyonu gibi saldırılara karşı koruma sağlayabilir.

1 Yorum

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir