Ana içeriğe atla

DVWA Reflected XSS Uygulaması (Düşük Düzey)

Hem kurulumu, hem kullanımı kolay, üstelik oldukça eğitici bir uygulama olan Damn Vulnerable Web Application(DVWA), üzerinde 3 seviyede sizin bilginizi ölçecek şekilde güvenlik açıklıkları bulunan bir PHP/MySQL Web uygulamasıdır. Bu uygulama aracılığı ile XSS, SQLi, CSRF… bilginizi ölçebilir, kendinizi geliştirebilirsiniz. Bugün anlatacağımız uygulamada DVWA üzerindeki düşük ve orta düzeydeki XSS açığının nasıl sömürülebileceğini göstereceğiz.


Öncelikle XSS’in ne olduğunu konuşacak olursak: HTML kodlarının arasına istemci tabanlı kod gömülmesi yoluyla kullanıcının tarayıcısında istenen istemci tabanlı kodun çalıştırılabilmesi olarak tanımlanır. XSS saldırgan tarafından same-origin-policy gibi erişim kontrollerini baypas’lamak için kullanılabilir.

Kısaca yaptığımız açıklamalardan sonra uygulamayı kullanmaya başlayalım. Öncelikle DVWA’nın sistemine login olduktan sonra, güvenlik düzeyini düşüğe çekip, Reflected XSS menüsünü seçiyoruz.


Yukarıda gördüğümüz formdaki textbox’ın isminin name olduğunu biliyoruz. Kodlarını aşağıda görebilirsiniz, bir ufak inceleyecek olursak; ekrana “Hello name’in_içindeki_değer” olarak değer bastığını biliyoruz. name textbox’ı için yapılan kontrollerin yetersiz olduğunu hep birlikte gördük; bu durumda rahatlıkla script tag’i içerine yazacağımız bir alert fonksiyonu ile güvenlik açığını kullanabiliriz..


Yukarıdaki resimde gördüğümüz bizim saldırı vektörümüzü oluşturan metin kutumuza xss dendiğinde ilk aklımıza gelen şeyi giriyoruz:


Script tagleri istemci tabanlı kodları ifade ederler. İçerisine yazılan alert() bir fonksiyon olup, ekrana içerisinde merhaba yazan bir messagebox gönderilmesini sağlar.

Düşük düzeyi exploit etmek görüldüğü üzere fazlasıyla kolay...


Yorumlar

Bu blogdaki popüler yayınlar

Adım Adım Weka Kullanımı

WEKA bir veri madenciliği uygulamasıdır ve Yeni Zellanda'daki Waikato Üniversitesi tarafından geliştirilmektedir. Bu yazının amacı WEKA Explorer'ı kullanmayı öğretmektir.


Weka ile Sınıflandırma

"Preprocessing" aşamasında veri setimizi yükledik ve eğer gerekliyse ön aşamadan geçirdikten sonra sınıflandırma aşamasına geçebiliriz. Weka nedir, Ön İşlem bölümünde neler yapılır sorusunun cevapları için önce bu yazımı okumalısınız.
SINIFLANDIRMA
Verimizi ön işlemden geçirdikten sonra artık sınıflandırabiliriz. WEKA'yı kullanarak bir çok sınıflandırıcıyı kullanabilirsiniz; Karar Ağaçları, SVM, Multi-layer Perceptrons vs. Veri setinizi yükledikten sonra Classify bölümüne tıklayarak sınıflandırma sayfasına erişebilirsiniz. Ön tanımlı ayarlara göre ZeroRalgoritması gelmektedir. Bu algoritmanın başarımı çok düşük olduğu için ben "Iris" veri seti için iyi sonuç verdiği bilinen J48 algoritması ile devam edeceğim:

Java ile Thread Pool Kullanımı

Oluşturacağımız uygulama 100 x 100 boyutlu bir matrisin içerisinde arttırma işlemi yapacaktır. Bu işlem için Runnable yada Callable sınıfı kullanılabilir. Runnable objesi olarak tanımladığımızda threadlerimiz sonlandırılana kadar sürekli olarak çalışacak ve kuyruğu sürekli olarak kontrol edip yeni bir görev olup olmadığına bakacaklardır. Thread class'ımız bize execute() adında bir method kullanım imkanı sağlamaktadır; execute(Runnable myR) şeklinde bir kullanım ile kuyruğa yeni Runnable objeler eklememize imkan sağlamaktadır.