BGA Bank Arama Kutusu Reflected XSS Zafiyeti ve İstismarı

Tablo 1. Arama sayfası Reflected XSS zafiyet bilgileri
URL
http://isube.bgabank.com/?sayfa=arama.php&s1=bgabank&s2=
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.
arama-xss.png
Ş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.

arama-xss-2.png
Şekil 3. Sonuç
Bu payload haricinde,içinde script veya alert kelimeleri geçmeyen yüzlerce farklı payload çalıştırılabilir.

Şekil 4. Örnek Payload Denemesi