XSS Nedir ? XSS KORUNMA YÖNTEMLERİ !



 Bugün sizlere XSS nedir ? konusundan bahsedeceğim.


XSS(Cross Site Scripting) Nedir? 

Saldırganın çeşitli yollarla sitelerde script kodlarını çalıştırmasıyla ortaya çıkan bir güvenlik zafiyetidir. Saldırgan zararlı kodlar yerleştirerek site kullanıcılarına zarar verebilir.


Script kodları sayfada bulunan <script> </script> etiketleri arasına yazılan kodlardır. Buraya zararlı kodların eklenmesi (çerez çalıcı gibi) büyük güvenilk tehditlerine yol açar. XSS açıklarını bu yüzden önemlidir.


XSS Açığının Türleri:

Üç çeşit XSS türümüz var.


Reflected XSS:

Kullanıcıdan alınan veririnin bir engele uğramadan direk yazdırılması ile ortaya çıkmaktadır.


Stored XSS:

Stored XSS diğer XSS türlerine göre aşırı tehlikelidir. Kullanıcıların haberi olmadan saldırgan tarafından yüklenen zararlı script kodu arka planda çalışır. Örneğin sitenin anasayfasına zararlı kod eklendiğini varsayalım. Siteye giren herkeste zararlı kod çalışacağı için siteye giren herkes bundan etkilenebilir.

DOM XSS:

DOM (Document Object Model-Belge Nesnesi Modeli) DOM yüzünden kaynaklanan zafiyetdir. “#” (diyez) işaretinden sonra payload denenilir.

Reflected XSS:

XSS açığı oluşturabilecek basit bir kod. Kullanıcıdan alınan veri direk yazdırılırdığı için açık çıkabilir.


Alınan değer hiç bir engele uğramadan direk ekrana yazdırılıyor.

Normak kullanımı bu şekilde. Basit bir XSS payloadı yazalım.


En çok kullanılan payloadlardan biridir.


<script>alert(“securitylordz.blogspot.com”)</script>

İsim yerine bir XSS payloadı yazdık ve çalıştı.


Stored XSS:

Burada ki temel mantık kullanıcıdan alınan zararlı verinin bir değişime uğramadan database gibi diğer kullanıcılara sunulan yerlere kaydedilmesi.


Bunun için basit bir PHP kodu hazırladım. Kullanıcıdan alınan veri bir text dosyasına kaydediliyor. Eğer text dosyasına saldırgan tarafından zararlı bir kod yerleştirilirse buraya giren diğer kullanıcılarda bu XSS atağına maruz kalıyor.

Ahmet adında bir isim girdim.

Girdiğim veri burada gözüküyor. Şimdi bir XSS denemesi yapalım.


İsim değerine <script>alert(“securitylordz.blogspot.com”)</script> yazdım.

Şimdi bakalım.


Evet girdiğimiz değer bu siteye giren herkesi etkileyecek. Kurban zararlı bir kod girmiş olsaydı siteye giren insanların hepsi zarar görecekti. Bu yüzden Stored XSS açıkları çok tehlikeli. Girdiğiniz siteler dikkat edin.


XSS Nasıl Önlenir ?

Güzel bir pentest yaptırmakta fayda var.


<script>,</script> gibi kelimelerin ve simgelerin (<,>) filtrelenmesi gerekiyor. htmlspecialchars gibi fonksiyonların kullanılması çok önemli.

0 Yorumlar

Yorum Gönder

Post a Comment (0)

Daha yeni Daha eski