Tablo 1. Arama sayfası Reflected XSS zafiyet bilgileri
URL
|
|
HTTP Talep Türü
|
GET
|
Payload
|
<Script>prompt(document.cookie);</Script>
|
Parametre
|
s1 veya s2
|
Arama kutusunda Reflected XSS zafiyeti bulunmaktadır. Zafiyet bilgileri Tablo 1. de belirtilmiştir. Bu zafiyeti istismar etmeden önce normal bir arama yapılır. “deneme” kelimesi aratıldığında “Aradığınız Kayıt Bulunamadı” hatası dönmektedir. (Şekil 1)
Şekil 1. Normal Arama Sonucu
Daha sonra çeşitli payloadlar denenebilir. En sık kullanılan payloadlardan <script> (1) </script> denendiğinde, sonuç Şekil 2 deki gibidir.
Şekil 2. Hata mesajı
Burada script, alert gibi sık kullanılan XSS payloadlarına karşı bir önlem alındığı düşünülebilir. Bu engeli atlatmak için en basit yöntemlerden biri script kelimesini büyük-küçük harf kullanarak yazmaktır. Şekil 3. de <Script>prompt(document.cookie);</Script> payloadı denenmiştir ve sonuç başarılıdır.
Şekil 3. Sonuç
Bu payload haricinde,içinde script veya alert kelimeleri geçmeyen yüzlerce farklı payload çalıştırılabilir.
Örnek; onerror=prompt(‘BGA’) src=”a” />&s2= (Şekil 4)
Şekil 4. Örnek Payload Denemesi