Teknolojilerin kesiştiği nokta!

Web Geliştiriciler Siteleri Web Uygulama Saldırılarından Nasıl Koruyabilir?

Saldırganlar, web sitelerini ve web uygulamalarını hedef alan yeni saldırı vektörleri ve metodları geliştirmeye durmaksızın devam ediyorlar. Web uygulamalarında görülen sistem açıkları işletmeler için zaman, para ve itibar kaybı gibi bir çok olumsuzluğa neden olmaktadır.


Sıkça Görülen Web Uygulama Saldırıları

Trustwave Küresel Güvenlik Raporuna göre, saldırganlar tarafından yaygın olarak kullanılan beş temel web uygulama saldırı tekniği vardır.

  1. Cross-Site Scripting (XSS)
  2. SQL Injection (SQLi)
  3. Path Traversal
  4. Local File Inclusion
  5. Distributed Denial of Service (DDoS)


Cross-Site Scripting (XSS)

En sık gözden kaçırılan web uygulama saldırılarından birisi olan XSS saldırıları, bir web uygulamasına ya da bir kullanıcının tarayıcısına kötü niyetli bir komut dosyası yerleştirerek gerçekleştirilir. XSS payload; veriyi tarayabilen, ele geçirebilen, değiştirebilen, parmak izini alabilen payload komut dosyalarından oluşur. 

Örnek vermek gerekirse bir saldırgan, websitesi uygulamalarının sayfalarını bir scam siteye (dolandırıcı site) yönlendirmek için XSS saldırılarına başvurabilir. Telegraph, McDonalds and Network Computing gibi bir çok web sitesi XSS saldırıları ile karşılaşmıştır.  

XSS saldırılarını önlemek için veri doğrulaması yapılması ve kullanıcı verilerinin arıtılması gerekir. 


SQL Injection (SQLi)

Saldırganlar, SQL injection saldırılarını kötü niyetli bir SQL sorgusunu (SQL query) web uygulamasının veritabanı sorgusuna yeleştirerek gerçekleştirirler. SQLmap, web uygulamalarındaki açıkların suistimal edilmesini sistematik hale getiren bir açık kaynak sızma testi (pen test) aracıdır. Başarılı bir SQL injection, saldırgana hassas verileri içeren sınırlandırılmış veri tabanına izinsiz giriş yapma ve de uygulamanın güvenlik mekanizmasını atlatma fırsatı sunar. 

Örneğin bir saldırgan, SQL injection saldırısı ile sınırlandırılmış veri tabanınında yer alan kayıtlara ekleme yapabilir ya da kayıtları düzenleyebilir ve silebilir. Önde gelen üç açık kaynaklı içerik yönetim sistemi olan WordPress, Drupal ve Joomla’nın da aralarında bulunduğu bir çok firmaya ciddi hasarlar vermiş olan SQLi’ye karşı bir çok firma hala savunmasız durumdadır. 

SQL injection saldırılarını önlemek için veri tabanı hatalarının site ve uygulamalarda yer alan kullanıcılar için görünür hale getirilmesi gerekmektedir. 

 

Path Traversal

Path Traversal saldırıları, klasörlere ya da kök dosyası dışında yer aralan dizinlere izinsiz giriş yapmayı hedefler. URL path içerisine “../” bezeri ifadelerin yerleştirilmesi ile gerçekleştirilir. 

Başarılı bir path traversal sayesinde saldırganlar bir siteye, kullanıcı kimlik bilgilerine, yapılandırma dosyalarına, veritabanına veya aynı fiziksel makinede yer alan diğer web sitelerine izinsiz olarak erişme imkanı elde ederler. Çok sayıda web sitesi  yerel dosyalarına erişilmesine, gelişigüzel dosyalar yüklemesine ve de XSS saldırıları gerçekleştirilmesine imkan tanıyan kök dosyası değişikliklerine maruz kalmıştır. 

Veri doğrulama ile path traversal saldırılarının önüne geçebilirsiniz.

 

Local File Inclusion (LFI)

LFI saldırısı, sunucuda yer alan bir dosyayı yürütmesi için uygulamaların dizin geçişi kullanılarak harekete geçirilmesidir. SQLmap’e benzer şekilde, Fimap web uygulamalarındaki yerel ve uzak dosya ekleme süreçlerinin (LFI ve RFI açığı) suistimal edilmesini sistematik hale getiren bir python komut dizisidir. 

 

LFI açığının suistimal edilmesi, bilgilerin açığa çıkarılmasından sistem gizliliğinin tümüyle tehlike altına girmesine kadar çeşitli etkilere yol açabilir. Yerleştirlen kod çalışmasa dahi sistem gizliliğini tehlikeye atabilecek, sistem sürümü gibi, değerli bilgiler saldırganların eline geçebilir. Eyes on Main, Winners Pizza ve Oregon Airsoft’un da aralarında olduğu bir çok web sitesi LFI kaynaklı saldırılarla karşı karşıya kalmıştır. 

 

Veri doğrulamasını beyaz liste ile gerçekleştirerek ve prepared statement’ları parametre sorgularıyla birlikte kulllanarak bu açığın önüne geçilebilir.


Distributed Denial of Service (DDoS)

DDoS saldırısı, komut ve kontrol botnetlerini kullanarak saldırılan sunucunun hizmetlerinin ve altyapısının kaldıramayacağı boyutta bir trafik yaratmak için birden çok açığa çıkarılmış sistemi kullanır. DDoS saldırısının hedefi erişilebilirliğin önüne geçmektir.

2016 yılında Mirai adlı bir yazılım, Linux kullanılan ağ bağlantılı cihazları uzaktan kumanda ettiği botlara çevirerek Krebs on Security adlı bir web sitesinde 620 Gbit/s’ye ulaşan bir DDoS saldırısına neden olmuştur. Bu DDos saldırısı sonrasında site dört gün boyunca erişime kapanmıştır. 

Ağınızı gözlemlemek ve potansiyel saldırıların önüne geçmek için Web Uygulama Güvenlik Duvarı (WAF) kullanabilirsiniz. 


Sonuç

Farklı saldırı çeşitleri olmakla beraber bunların önüne geçecek çeşitli savunma yöntemleri vardır. Uygulamalarınızı ve kullanıcılarınızı korumanız için size önerebileceğimiz en iyi yöntemler; saldırıya açık olan kodların henüz geliştirme aşamasındayken tespit edilebilmesi için kodların gözden geçirilmesi ve de profesyonel sızma testleri gerçekleştirerek sitenizdeki açıkları tespit edilmesi için hata ödül programlarının düzenlenmesidir. Fakat bu uygulamaları gerçekleştirseniz bile kendinizi risk altında bulabilirsiniz. 

Bilginç IT Academy sizlere yukarıda bahsettiğimiz web uygulama saldırılarının “yaparak öğren” yöntemiyle ele alındığı siber güvenlik eğitimleri sunmaktadır. Bu eğitimler ile katılımcılar bir siber güvenlik uzmanın güvenli ve kontrollü bir ortamda nasıl savunma ve saldırı eylemleri gerçekleştirdiği görme imkanı elde ederler. 

Sitemizi kullanarak çerezlere (cookie) izin vermektesiniz. Detaylı bilgi için Çerez Politika'mızı inceleyebilirsiniz.