OWASP DVWA – Cross Site Request Forgery (CSRF) (Düşük Seviye): GET Metodu ile Kimlik Bilgilerini Taşıyan Sayfada CSRF Zafiyetinin İstismar Edilmesi

0
899
views
Web uygulamaları sızma testleri sırasında hedef uygulama üzerindeki bir kontrol eksikliği sebebi ile oturum açmış kullanıcı yetkileri ile işlem gerçekleştirilebilir. Bu yazıda, OWASP DVWA (Damn Vulnerable Web App) üzerindeki düşük zorluk seviyesindeki Cross Site Request Forgery (CSRF) açıklığı istismar edilecek ve hedef uygulamayı kullanan kurbanın parolası değiştirilecektir.

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

Mevcut uygulamada herhangi bir kontrol (eski parolayı sormak gibi) olmadan parola değiştirilebilmektedir. Parola değişikliği için belirlenen parola (“deneme123” gibi) yazıldığında, elde edilen URL ve ekran görüntüsü aşağıdaki gibidir.

http://10.10.2.156/dvwa/vulnerabilities/csrf/?password_new=deneme123&password_conf=deneme123&Change=Change#

 

Burp Suite ile yakalanan talep içeriğinde de görüldüğü gibi, parola URL içerisinde (GET metodu ile) taşınmakta ve yeni parola bu şekilde belirlenmiş olmaktadır.

 

Oturumu açık bir kullanıcı parolasını değiştirmek istediğinde URL içerisindeki parola bilgisini güncellemesi yeterli olacaktır. Yani, kullanıcı parolasını “Aa123456” yapmak isterse kullanıcının aşağıdaki linke tıklaması yeterli olacaktır.

http://10.10.2.156/dvwa/vulnerabilities/csrf/?password_new=Aa123456&password_conf=Aa123456&Change=Change#

 

Ancak bu durum saldırı amacı ile de kullanılabilir. Saldırgan, kurbana aşağıdaki URL’i göndererek tıklamasını sağladığında, kurban eski parolası ile bir daha oturum açamayacaktır. Bunun yanında saldırgan ise kendisinin belirlediği yeni parola (“Parola12345”) ile kurban kullanıcı gibi oturum açabilecektir.

http://10.10.2.156/dvwa/vulnerabilities/csrf/?password_new=Parola12345&password_conf=Parola12345&Change=Change#

 

Eğer bu link doğrudan tıklamak yerine, bir şekilde çağırılırsa da yine link tıklanmış gibi CSRF zafiyeti barındıran sayfaya talepte bulunulur ve parola değişikliği gerçekleşir. Örneğin bir web sitesindeki resim dosyası, aşağıda da görüldüğü gibi, kaynak olarak CSRF’li sayfayı gösterirse bu siteye bir talepte bulunulur.

<img src=”http://10.10.2.156/dvwa/vulnerabilities/csrf/?password_new=Parola12345&password_conf=Parola12345&Change=Change#” width=”0″ height=”0″>

Bu durum kötüye kullanılabilir. Saldırgan bir URL’i kurbana doğrudan tıklatmak yerine, kurbanı hazırladığı bir web sayfasına da yönlendirebilir. Saldırgana ait bu web sayfasındaki bir resim de CSRF zafiyeti barındıran sayfaya talepte bulunursa kurbanın parolası yine değişmiş olur. Çünkü bu talebi yapacak olan taraf web sayfasına giren ve resmin gösterileceği kurbandır. Saldırganın sitesindeki resim dosyası aşağıdaki gibi olabilir.

Örneğin; 10.10.2.128 IP adresi saldırganın yönetiminde olan bir web sitesi olduğu durumda, saldırganın kurbana gönderdiği link aşağıdaki gibi olsun.

http://10.10.2.128/oltalama.html

Bu linke tıklandığında sayfa içerisindeki gizli (boyutları 0x0 olarak belirtilmiş) resim dosyası CSRF zafiyeti barındıran sayfaya (10.10.2.156 sunucusuna) bir talepte bulunacaktır. Eğer kurbanın zafiyeti barındıran uygulamada oturumu açıksa bu talebi yapan kullanıcının oturum bilgileri ile talep gerçekleşecek ve parola saldırganın belirlediği şekilde ayarlanmış olacaktır. Saldırgana ait oltalama sayfasının kaynak kodu aşağıdaki gibi olabilir.

 

İlgili Kaynak Kod:

 

 

Kaynak:

http://www.includekarabuk.com/kategoriler/DVWAUygulamasi/Ders-7—Cross-Site-Request-Forgery-Low-Level.php

 

 

 

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.