Vulnhub hackfest2016: Quaoar Writeup (TÜRKÇE)

   


    Herkese merhabalar, dün akşam biraz vaktim olunca makine bakayım dedim ve kolay olduğunu duyduğum quaoar makinesini çözmeye çalıştım. Bundan önce çözdüğüm diğer iki makineye nazaran daha kolay olan bu makinenin çözümünü elimden geldiğince anlatmaya çalışacağım. Makineyi Quaoar Vulnhub adresinden indirebilirsiniz.

    Sitede belirtildiğine göre makinede 3 adet flag var. User alarak, root alarak  ve post exploiation ile bu flagler alınıyor. Ben 2 tanesini aldım, üçüncü flagi ise başka bir writeuptan baktım(post exploitationun ne manâya geldiğini bilmiyordum 😐), onu da kaynak gösterip anlatmaya çalışacağım.

    Herzamanki gibi ip adresini bularak başlıyoruz. Benim makinemin adresi 10.0.2.5 olduğu için 10.0.2.0/24 şeklinde nmap taraması yaparak ip adresini bulacağız.

nmap 10.0.2.0/24

    Tarama sonucunda hedef makinemizin ip adresi 10.0.2.8 çıkıyor ve bir nmap taraması daha yaparak çalışan servisleri ve versiyonlarını öğreniyoruz.


    80 portunda çalışan http servisine hemen bakıyoruz ancak bizi burada fotoğraftan başka bir şey karşılamıyor.



   Ardından başka neler varmış diyerek dirb aracımızla site üzerindeki directoryleri keşfetmeye çalışıyoruz.


    Koyduğum fotoğrafta sadece listenin baş tarafı var, dirb bize uzunca bir liste döndürüyor. Upload dizini dikkatimi çekti, belki dosya yükleyerek shell alınabilir diye düşünürken wordpress sayfaları da sonuçlarda çıkınca hemen wp login sayfasına gidiyoruz.


       İlk olarak elimde herhangi bir user ve password bilgisi olmadığı için hem user hem password listesi olarak rockyou.txt vermeyi denedim ama k*li linux kitlendi kaldı😢 Zaten böyle saçma bir şekilde login bilgisi elde edilmeyecektir diye düşündüm, internetten wp default username bilgisine baktım ve "admin" olduğunu gördüm. Parola olarak da admin verince wp paneli geldi. Benim gibi şansa bulmak istemeyenler wpscan aracında

wpscan --url site_linki -e U

komutunu çalıştırarak username enumeration yapıp admin bilgilerini alabilir :D
    Neyse, şimdi panele girip php ile reverse shell alacağız. Bunun için appearance sekmesinden editör bölümüne giriyoruz ve seçtiğimiz herhangi bir php dosyasına https://github.com/pentestmonkey/php-reverse-shell adresinden kopyaladığımız php kodlarını yapıştırıyoruz. Ardından içerisindeki ip ve port bölümlerine kendi ip adresimizi ve dinlemek istediğimiz portumuzu yazıp kaydediyoruz.




    Şimdi kendi makinemizden bu portu dinleyelim ve reverse shellimizi alalım.


Ben 404.php ye shell kodlarını atmıştım ve port olarak da 6000. portu yazmıştım. Bu portu netcat ile dinlemeye başlıyoruz ve tarayıcıdan 404.php adresini açıyoruz. Ardından bize shell geliyor. Ben bashe geçmek için yukarıdaki python kodunu kullandım. Ana dizinde python kodu çalıştıramayınca tmp klasörünün altında çalıştırdım. Ardından home directoryden flag.txt dosyasını okuyup ilk flagimizi almış bulunuyoruz.


    User aldık, şimdi root almaya sıra geldi. Burada ilk gördüğümüz upload dizinine bakıyoruz. Çünkü  config dosyası içerisinde kullanıcı adı ve parola bilgileri bulunuyor. Config dosyaları veritabanlarının kritik bilgilerinin bulunduğu dosyalar oluyor. 


   Yukarıda görüldüğü gibi bir arama yaparak upload dizinini bulabilirsiniz.


    var/www/upload dizinine gidip config.php dosyasını okuyoruz ve password olarak "rootpassword!" ayarlandığını görüyoruz. Gidip hemen bu parola ile root olup ikinci flagi alıyoruz.


   Ben buraya kadar yapıp bırakmıştım ancak makinede 3 tane flag var. Son flag post exploitation ile alakalı imiş. Bu kavramın ne olduğunu bilmiyordum. İnternetten bakınca anladım ki post exploitation dediğimiz olay makineye sızdıktan sonra orada kalıcılık sağlamak manasına geliyormuş. Bunu okuyunca aklınıza hemen cron dosyaları gelebilir. Bu dosyalar zamanlanmış görevler ile ilgili bilgiler barındıran dosyalardır. 
https://pavornoc.wordpress.com/2018/02/06/vulnhub-quaoar-walkthrough/ Bu blogdaki arkadaş güzel bir şekilde flagi bulmuş ve anlatmış. Onun writeupını da okuyun derim. Nasıl aldığını da kısaca yazayım.
   Öncelikle makinede cron dosyalarının olduğu dizine gidiyoruz. Ben ssh ile tekrar bağlanıp yaptım. 



Ardından etc klasöründen cron dosyalarını listeliyoruz.


cron.d dosyasını okuyoruz ve işaretlediğim yerde son flagimiz görünüyor.


   Evet, bu writeup da bu kadar. Başta da dediğim gibi diğerlerine göre daha kolay bir makineydi ama 3. flag güzel bir konuda yapılmış bence. Umarım faydalı bir yazı olmuştur. Bir sonraki yazıda görüşmek üzere kendinize iyi bakın 😊

Yorumlar

Bu blogdaki popüler yayınlar

rgbCTF Writeup(Rev/Pwn)

Overthewire Bandit Çözümleri