XSS çapraz kod çalıştırmak demektir. Yani bizlere izin verilen alanlar üzerinden sitede kod çalıştırmak demektir. Ben burada açığı nasıl kullanacağımızı anlatmayacağım sadece yaptığımız işin arkaplanını anlatmaya çalışacağım.
Bir programcı eğer gelen verileri kontrol etmeden ekranda gösterirse açık oluşur. 3 şekilde programıcının kodlarının arasına sızabiliyoruz.
İlk olarak url kısmından. Siz bir formu doldurup gönderdiğinizde gideceği sayfaya
site.com/?isim=note
şeklinde bir adres ile gider. Gittiği sayfada bunu alır ve verinin karşısındaki bilgiyi alır işler.
Şöyle bir sayfamız olsun ve gelen veri buradan kullanıcıya gösterilsin
Biz burada isim yerine url kısmına şöyle yazalım
site.com/?isim=alert('merhaba');
Eğer programcı gelen ismi hiç kontrol etmeden yukarıdaki $isim yerine koyarsa bizim kodumuz sayfada çıkacak ve ekranda "merhaba" şeklinde bir mesaj kutusu çıkacaktır
2. olarak da sitedeki kutulardır. Yani arama kutuları gibi. Aynen yukarıdaki gibi arama butonuna bastığınız zaman kontrol edilmezse kodunuz giden sayfada çalışacaktır.
Sonuncusu en tehlikeli olanıdırÇünkü kodunuz artık siteye kaydolacak ve siteyi her ziyaret eden kişi sizin kodlarınızı görecektir Siz bu kodlara bir javascript virüs koyarsanız varın siz düşünün...
Bu pek nadir bir durumdur. Forum blog gibi sitelerde genelde olur. Siz konu paylaşırsınız ve eğer yukarıdaki gibi bir kontrol yoksa yazınız yerine sizin yazdığınız kodlar ekrana basılır ve çalıştırmış olursunuz.
Bir programcı eğer gelen verileri kontrol etmeden ekranda gösterirse açık oluşur. 3 şekilde programıcının kodlarının arasına sızabiliyoruz.
İlk olarak url kısmından. Siz bir formu doldurup gönderdiğinizde gideceği sayfaya
site.com/?isim=note
şeklinde bir adres ile gider. Gittiği sayfada bunu alır ve verinin karşısındaki bilgiyi alır işler.
Şöyle bir sayfamız olsun ve gelen veri buradan kullanıcıya gösterilsin
Kod:
<html>
<body>
<?php
print("Merhaba $isim");
?>
</body>
</html>
Biz burada isim yerine url kısmına şöyle yazalım
site.com/?isim=alert('merhaba');
Eğer programcı gelen ismi hiç kontrol etmeden yukarıdaki $isim yerine koyarsa bizim kodumuz sayfada çıkacak ve ekranda "merhaba" şeklinde bir mesaj kutusu çıkacaktır
2. olarak da sitedeki kutulardır. Yani arama kutuları gibi. Aynen yukarıdaki gibi arama butonuna bastığınız zaman kontrol edilmezse kodunuz giden sayfada çalışacaktır.
Sonuncusu en tehlikeli olanıdırÇünkü kodunuz artık siteye kaydolacak ve siteyi her ziyaret eden kişi sizin kodlarınızı görecektir Siz bu kodlara bir javascript virüs koyarsanız varın siz düşünün...
Bu pek nadir bir durumdur. Forum blog gibi sitelerde genelde olur. Siz konu paylaşırsınız ve eğer yukarıdaki gibi bir kontrol yoksa yazınız yerine sizin yazdığınız kodlar ekrana basılır ve çalıştırmış olursunuz.