XSS
XSS (Cross-site Scripting), web sitelerinde bulunan güvenlik zafiyetinden faydalanılarak yetkisiz bir şekilde zararlı komut yürütülmesini sağlayan bir tür siber saldırı türüdür.
XSS Nedir?
Açılımı Türkçe’de Siteler Arası Betik Çalıştırma anlamına gelen XSS, farklı yöntemleri takip ederek web sitelerinde yetkisiz komut çalıştırmayı amaçlayan siber saldırı şeklidir. XSS saldırıları için siber saldırganlar web sitelerindeki çeşitli güvenlik zafiyetlerini araştırır. Kullanıcı tarafından girilen içeriği herhangi bir filtre uygulamadan sunucu tarafına gönderen, veritabanına kaydeden veya doğrudan sayfa içeriğine dahil eden web siteler XSS saldırılarının hedefidir.
XSS saldırıları, kullanıcıların gözünde güvenilir olarak görülen bir web sitesini ziyaret etmeleri durumunda kullanıcıların tarayıcılarında kötü amaçlı kod çalıştırılır. Tarayıcı bilgileri, konum, oturum çerezleri gibi verileri ele geçirmek bu saldırıların amaçlarının başında gelir. Toplanan oturum bilgileri ile kullanıcı hesaplarının kontrolünü ele geçirmek amaçlanır. Bununla birlikte herhangi bir tarayıcı eklentisi yüklenmesi, zararlı yazılım indirme işlemi, kötü amaçlı web sitelerine yönlendirme gibi eylemler de gerçekleştirilebilir.
XSS Saldırı Türleri Nelerdir?
Web sitelerinde yer alan güvenlik açıklarına göre farklı stratejiler izlenerek XSS saldırıları gerçekleştirilebilir. Güvenilir web sitelerinde yetkisiz olarak komut çalıştırmayı amaçlayan XSS saldırıları üçe ayrılır.
Yansıtmalı (Reflected cross-site scripting)
XSS saldırıları türlerinden biri olan reflected XSS, sunucudan gelen HTTP isteğinin URL’de yer alması ve web sitesinde doğrudan yansıtılması ile gerçekleşir. Örneğin, sunucudan gelen bir onay veya hata mesajını herhangi bir işlem yapmadan doğrudan sayfa içerisinde kullanıyorsa bu açık XSS için kullanılabilir.
Bu tür saldırılar için modifiye edilmiş ve içerisinde çalıştırılacak zararlı scriptin bulunduğu URL’in hedeflenen kişi tarafından ziyaret edilmesi gerekir. Bu tür saldırılar ile doğrudan web sitesi yöneticileri hedeflenerek sayfanın tamamının kontrolünü elde etmek amacıyla siber saldırı gerçekleştirilebilir.
Depolanan XSS (Stored cross-site scripting)
Depolanan XSS veya bir diğer adıyla kalıcı XSS saldırıları için ise web sitesinin veritabanına zararlı kod satırının kaydedilebilmesi ve bununla beraber web sitesinin kendi veritabanından aldığı zararlı kodu doğrudan kullanması gerekir.
Kalıcı XSS saldırılarılarına çoğunlukla forumlar, yorum kısmı bulunan bloglar ve girilen içeriğin herkes tarafından görüldüğü mesaj panosu benzeri özelliklere sahip siteler hedef olur. Siber saldırganlar yorum gibi içerik ekleyebilecekleri kısımlar aracılığı ile zararlı kod parçalarını veritabanına eklemeyi amaçlar. Denetim yoksa ve hiçbir işlem yapmadan mesajlar doğrudan veritabanından çekilerek sunuluyorsa, yorum kısmını görüntüleyen her ziyaretçi bu saldırının birer hedefi haline gelir.
DOM Tabanlı XSS
Web sayfasının DOM’unu değiştirmeyi hedefleyen bu türde XSS saldırıları, yansıtmalı veya reflected XSS saldırılarına benzerdir. Ancak bu türden saldırılar kullanıcıların tarayıcıları yani istemci tarafında gerçekleşir. Reflected XSS’de URL ile yollanan zararlı kod parçası önce sunucu tarafına ulaşır sonrasında hedefteki kullanıcıya iletilir. DOM tabanlı XSS’de ise zararlı kod parçası doğrudan hedefin tarayıcısında çalıştırılır. Kullanıcı girişlerinden veya URL üzerinden gerçekleşebilir. Zararlı kod parçası, sunucu ile herhangi bir etkileşime girmez.
XSS Saldırılarına Karşı Nasıl Korunulur?
Web sitesi geliştirirken kullanıcıları ve kendinizi potansiyel XSS saldırılarından korumak için alabileceğiniz bazı önlemler bulunur.
- Kullanıcıların web sitesinde HTML formatında içerik girişi gerçekleştirmesini engelleyebilirsiniz. Böylelikle doğrudan XSS saldırılarının büyük bir çoğunluğunun önüne geçebilirsiniz.
- Kullanıcı tarafından gerçekleştirilen veri girişlerini doğrulamadan geçirebilirsiniz. Örneğin yaş veya isim istenen alanlarında giriş türlerini sınırlandırabilirsiniz.
- Çerez güvenliğini sağlamak için çerezlerin IP adresleri ile eşleştirilmesi veya JavaScript ile çerezlere erişimin kısıtlanması gibi önlemler alınabilir.
- WAF (web application firewall) kullanarak XSS ve benzeri saldırıların önlenmesi için gereken yapılandırmaları sağlayabilirsiniz.
- Olası XSS saldırılarına karşı geliştirdiğiniz web sitesini test etmelisiniz.
Ücretsiz eğitimlerimiz seni bekliyor.
Her biri alanında uzman eğitmenler tarafından hazırlanmış eğitimlerimizden sana uygun olanı keşfedip, hemen eğitime başlayabilirsin. Süre kısıtlaması olmayan eğitimlerimizi, hiç bir ücret ödemeden hemen keşfetmeye başla.