Reflected Xss
İlk önce herkese selamlar değerli arkadaşlarım. Bu konuda sizlerle birlikte reflected xss zafiiyetine değineceğiz. İyi forumlar dilerim. Saygı ve sevgilerimle.
XSS = Web güvenlik açıklarında öncelikli olarak kontrol edilmesi gereken unsur web sitesindeki inputları (kullanıcı giriş noktaları) kontrol edilmelidir. İnputlar sayesinde sistem üzerinde javascript kodlarının çalıştırılıp olumlu sonuç döndürmesine XSS zafiyeti denir. XSS zafiyetinin farklı çeşitleri bulunmaktadır.
REFLECTED XSS = Kullanıcıdan input yardımıyla gelen zararlı verinin sunucu tarafından işlenip tekrar istemciye yansıtılması durumudur. Bu tür açıklar genellikle URL parametreleri, arama kutuları veya form girdileri gibi geçici veriler aracılığıyla gerçekleşir. Reflected XSS’de enjekte edilen kötü niyetli kod veritabanına kaydedilmez; sadece istemcinin tarayıcısında anlık olarak çalıştırılır.
Aşağıdaki URL, bir Reflected XSS örneğidir:
XSS = Web güvenlik açıklarında öncelikli olarak kontrol edilmesi gereken unsur web sitesindeki inputları (kullanıcı giriş noktaları) kontrol edilmelidir. İnputlar sayesinde sistem üzerinde javascript kodlarının çalıştırılıp olumlu sonuç döndürmesine XSS zafiyeti denir. XSS zafiyetinin farklı çeşitleri bulunmaktadır.
REFLECTED XSS = Kullanıcıdan input yardımıyla gelen zararlı verinin sunucu tarafından işlenip tekrar istemciye yansıtılması durumudur. Bu tür açıklar genellikle URL parametreleri, arama kutuları veya form girdileri gibi geçici veriler aracılığıyla gerçekleşir. Reflected XSS’de enjekte edilen kötü niyetli kod veritabanına kaydedilmez; sadece istemcinin tarayıcısında anlık olarak çalıştırılır.
Aşağıdaki URL, bir Reflected XSS örneğidir:
https://test.com/search?q=<script>alert('XSS')</script>
Eğer bu URL, kullanıcıdan alınan q parametresini filtrelemeden doğrudan HTML'e yansıtırsa, tarayıcı alert('XSS') komutunu çalıştıracaktır.
Tehditler
- Çerez hırsızlığı (session hijacking)
- Kullanıcıya zararlı sayfalar yönlendirme
- Phishing (oltalama) saldırıları
Korunma Yöntemleri
- Girdi (input) doğrulama ve çıktı (output) filtreleme
- HTML entity encoding
- Content Security Policy (CSP) kullanımı
- Güvenli framework ve kütüphanelerle geliştirme
Zafiyeti Anlamak
Zafiyeti daha güzel anlayabilmek amacıyla sanallaştırılmış bir makine yardımı ile sizlere zafiyeti anlatacağım.
Sanal makinede bulunan searchbox (arama kutusu) bir input olduğu görülmekte ve aşağıdaki adımlar izlendi.
Yukarıdaki resimde web server içerisinde kullanıcı girdisini sayfa içerisinde yazdırdığı görüntülendi.
Yapılan bu test sonucunda temel düzeyde bilinen <script>alert("TURKHACKS")</script> javascript kodu kullanıldı.
Kullanılan javascript kodu sonrasında sistem üzerinde bir pop-up açıldığı görüntülendi ve xss zafiyeti tespit edildi. Tespit edilen xss zafiyeti sonrasında sayfa yenilendiğinde pop-up tekrar görüntülenemedi ve REFLECTED XSS zafiyeti tespit edildi.








