Yansıyan XSS (Giriş)

Feb 23 2023
Merhaba arkadaşlar bugün sizlere Web Uygulama Güvenlik Testlerinde karşılaştığım Reflected XSS (Input) zafiyetinin bir benzeri olan .Net Core MVC kullanarak geliştirdiğim Saka isimli proje üzerinde zafiyet tespiti ve bu zafiyetten yararlanma adımlarını göstereceğim.

Merhaba arkadaşlar bugün sizlere Web Uygulama Güvenlik Testlerinde karşılaştığım Reflected XSS (Input) zafiyetinin bir benzeri olan .Net Core MVC kullanarak geliştirdiğim Saka isimli proje üzerinde zafiyet tespiti ve bu zafiyetten yararlanma adımlarını göstereceğim .

XSS nedir?

XSS güvenlik açığı hakkında detaylı bilgiye aşağıdaki yazıdan ulaşabilirsiniz.

Uygulamayı Çalıştırma

Liman işçisi

docker pull erdemstar/saka:reflected-xss-input
docker run -d -p 80:80 erdemstar/saka:reflected-xss-input

git clone https://github.com/ErdemStar/Saka
cd reflected-xss-input
- mouse click on reflected-xss-input.sln
- devenv reflected-xss-input.sln (CMD)

Uygulamayı ilk açtığımızda aşağıdaki gibi bir sayfa bizi karşılıyor. Sayfada Attack butonuna basarak test edeceğimiz kısma yönlendiriliyoruz.

dizin sayfası

Saldırı sayfasına geldiğimizde kullanıcıdan isim bilgisinin alındığı bir sayfa ile karşılaşıyoruz. Bu alana bir isim yazıp gönderdiğimizde aşağıdaki gibi bir sonuç alıyoruz.

saldırı sayfası
saldırı sayfası

Uygulamayı daha yakından incelemek için tarayıcı üzerinden gelen ve giden istekleri görmek faydalı olacaktır.

Burp Proxy Saldırı sayfası

Zihinsel Notlar

  • Kullanıcıdan alınan değer name parametresinde tutulur ve POST HTTP Fiili kullanılarak gönderilir.
  • Uygulama, aldığı ad değerini <b></b> içine ekler ve yanıt verir.

Uygulama hakkında yeterli bilgiyi elde ettikten sonra XSS zafiyetinden faydalanmak için göndereceğimiz isim değerine tarayıcı tarafından yorumlanacak bazı karakterler ekliyoruz.

Burp Proxy Saldırısı sayfası

Gelen cevabın içeriğini kontrol ettiğimizde uygulamanın herhangi bir güvenlik kontrolünden geçmeden tarafımızdan alınan isim değerini yansıttığı anlaşılmaktadır.

Uygulama davranışı hakkında bu kadar bilgi edindikten sonra name alanına aşağıdaki gibi bir istek gönderdiğimizde uygulama üzerinde Reflected XSS senaryosunu gerçekleştirmiş oluyoruz.

Burp Proxy Saldırısı sayfası
saldırı sayfası

Yazımı okuduğunuz için teşekkür ederim, umarım sizin için faydalı olmuştur. Aşağıda işinize yarayabilecek diğer konseptlerimin linklerini bırakıyorum.

Web güvenlik açıkları ile ilgili diğer makalelerimi görmek için buraya tıklayın. Bağlantı