XSS Nedir?
İngilizce: Cross-Site Scripting
Yayın: · Son güncelleme:
XSS Nedir? Kısaca
XSS (Cross-Site Scripting), saldırganın bir web sitesine zararlı betik yerleştirip bu betiği başka kullanıcıların tarayıcısında çalıştırmasına yol açan bir web güvenlik açığıdır. Oturum çalma ve sahte form gösterme için kullanılır.

XSS nedir?
XSS, bir web sitesinin kullanıcıdan aldığı veriyi süzmeden sayfaya basması sonucu ortaya çıkan bir güvenlik açığıdır. Saldırganın yazdığı betik, siteye güvenen diğer ziyaretçilerin tarayıcısında o sitenin koduymuş gibi çalışır. Sorun kullanıcının bilgisayarında değil, sitenin kodundadır.
Hangi türleri var?
Üç temel türü vardır ve fark, zararlı kodun nerede durduğudur.
| Tür | Kod nerede? |
|---|---|
| Depolanmış (stored) | Yorum, profil gibi alanlarda sunucuya kaydedilir |
| Yansıtılan (reflected) | Bağlantının içinde gelir, sayfa onu geri yansıtır |
| DOM tabanlı | Sayfanın kendi JavaScript kodu veriyi güvensiz işler |
Örneğin bir forumun yorum alanı süzülmüyorsa, oraya bırakılan bir betik o konuyu açan herkeste çalışabilir. Bu betik oturum çerezini okumaya ya da sayfanın üstüne sahte bir giriş formu koymaya çalışabilir.
Kullanıcı ve geliştirici ne yapmalı?
Geliştirici tarafında asıl çözüm, çıktıyı bağlama uygun biçimde kodlamak (output encoding) ve girdiyi doğrulamaktır. Modern çatıların (framework) varsayılan kaçış mekanizmalarını kapatmamak, İçerik Güvenlik Politikası (CSP) başlığı eklemek ve çerezlere HttpOnly bayrağı vermek riski ciddi ölçüde azaltır. XSS, OWASP Top 10 listesinde enjeksiyon başlığı altında yer alır.
Kullanıcı olarak yapabileceğiniz şey sınırlıdır ama işe yarar. Tarayıcınızı güncel tutun, tanımadığınız kaynaklardan gelen uzun ve garip karakterli bağlantılara tıklamayın. Bildiğiniz bir sitede beklenmedik bir şifre penceresi açılırsa bilgilerinizi girmeyin, adresi kendiniz yazarak siteye yeniden girin.
Sıkça Sorulan Sorular
XSS ile SQL enjeksiyonu arasındaki fark nedir?
SQL enjeksiyonu sunucudaki veritabanını hedef alır. XSS ise zararlı kodu sitenin diğer ziyaretçilerinin tarayıcısında çalıştırır. İkisi de girdinin güvensiz işlenmesinden doğar.
Antivirüs XSS saldırısını engeller mi?
Çoğu zaman engellemez, çünkü zararlı kod güvendiğiniz sitenin içinden gelir. Asıl koruma sitenin kodunda yapılır. Kullanıcı tarafında güncel tarayıcı ve dikkatli bağlantı kullanımı riski azaltır.