Vulnhub Broken 2020 Makinesi Çözümü

Vulnhub Broken 2020 Makinesi Çözümü

Merhabalar , Bugün Broken 2020 isimli makinesinin çözümünü anlatmaya çalışacağım.Scriptlerle dolu eğlenceli bir makinedir.İlk olarak netdiscover toolumuzu kullanarak hedef sistemimizin ip adresini tespit edebiliriz.

netdiscover

Şimdi hedef sistemde çalışmakta olan port ve servisleri görüntülemek için nmap taraması yapmamız gerekiyor.

sudo nmap -sS -sC -sV 192.168.27.14


Hedef sistemde 22 (SSH) ve 80 (HTTP) servisleri çalışıyor.Ssh 7.9 ‘da işime yarayabilecek herhangi bir güvenlik açığı olmadığı için http Apache servisini tarayıcımızda açıyorum.


Karşımıza default olarak bir websitesi geldi.Sitede herhangi birşey çıkmayınca dizin taraması yapmamız gerekiyor.Ben dizin taraması için dirsearch kullanıyorum.Hızlı bir tarama yaptığı için tavsiye ederim bu arada 😉

python3 dirsearch.py -u http://192.168.27.14/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -f -e php,txt,html

cms dizinine gittiğimiz zaman bize install sayfası veriyor.install butonuna tıkladığımız zaman /?install=on parametresini veriyor.Bizde install=of yazdığımız zaman ilk flag karşımıza çıkıyor.

install” parametresinde herhangi bir güvenlik açığı tespit edemeyince tekrardan dizin taraması yapıyorum.Bu sefer cms dizininde.

python3 dirsearch.py -u http://192.168.27.14/cms/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -f -e php,txt,html

cms dizini içinde cc dizinini tespit ettik.”cc” dizinine gidiyoruz.Karşımıza bir panel geldi.İp numarası ve port numarası var.Kendi makinemde python3 ile http servisi çalıştırıp kendi makineme istekte bulunuyorum.


Sistemde CC server var.Yazmış olduğumuz ip adresi ve portuna GET isteğinde uzun bir .sh dosyasına istekte bulunuyor.Bizde kendi makinemizde o isimde .sh uzantılı reverse shell yazabiliriz.Reverse shell’lere buradan ulaşabilirsiniz.


Burada dikkat etmemiz gerek nokta CC server’ın bizim makinemize yapmış olduğu istek doğrultusunda aynı isimde script oluşturmaktır.Şimdi tekrardan web tarayıcımızdan kendi makinemize 8000 portunda istek yaparak oluşturmuş olduğumuz scriptin hedef sistem tarafından çalıştırılmasını sağlamış olduk.Bu sayede reverse shell almış olduk.


Kabuk erişimimizi düzenledikten sonra makinede araştırma yapıyoruz.Linenum.sh gibi scriptleri çalıştırsak da herhangi bir sonuç elde edemedik.Home dizinine bakıp neler dikkat çekici ipuçları arayabiliriz.


2. flag’ımızı da okuduktan sonra script dizinine bakabiliriz.Burada log.py dosyası ilgimizi çeksede herhangi bir yazma hakkına sahip değiliz.Bununla ilişkili bir durum olabileceğini tahmin ederek hedef sisteme pspy yüklüyoruz.


Sistem haraketlerini incelerken her dakikayı 01 geçe script dizinindeki log.py dosyasının çalıştırıldığını fark etmiş olduk.Log py dosyasına yazma yetkimiz olmadığı için sildik.Pspy çıktısında dikkat ettiğimiz gibi alice kullanıcısı kullanılarak script çalıştırılıyor.Bizde kendi makinemizde reverse shell hazırlıyıp log.py olarak hedef sisteme yüklüyoruz.İlk önce hedef sistemdeki log.py dosyasını silmemiz gerekiyor.


Şimdi hedef sisteme yükledikten sonra beklemeye başlıyacağız.Bir dakika içinde sistemde bulunan bot log.py dosyasını çalıştırıcak ve bizde reverse shell almış olacağız.


Şimdi reverse shell aldığımıza göre alice dizinine gidebiliriz.Burada backup dizini ilgimiz çekti.Flag.txt‘yi okuyarak 3. flag’ı okumuş oluruz.

python -c 'import pty;pty.spawn("/bin/bash")'

Dizinimizde bulunan note.txt ‘yi okuyarak bize verilen nota bakabiliriz.


Burada Alice’nin hacklendiğinden bahsediyor.Sadece path.txt dosyasına kendi istediğimiz dizini atmamız gerektiğini ve geri kalan kısımları botun hallediceği yazıyor.Dizinde bulunan logbot.log dosyasına bir bakalım.


Log kayıtlarına göre her dakikada bir path.txt dosyasında herhangi bir path bulamadığı yazıyor.Yani sistemde bulunan bot önce path.txt‘yi okuyor.Herhangi birşey bulamayınca logbot.log olarak kayıt altında tutuyor.Bizde path.txt dosyasına root dizinini atarak root dizininde bulunanları okuyabiliriz.

echo -n "/root" > path.txt

root dizinini path.txt dosyasına attıktan sonra bir dakika içinde root dizininde bulunan dosyalar kendi dizinimize geldi.Bunu teyi etmek için logbot.log dosyasını okuduğumuz zaman /root/ rsync to /home/alice/backup şeklinde bir çıktı vermektedir.Eğer root olmadan olmaz diyorsanız etc dizinini atıp root hashini kırarak da root olabilirsiniz.

Okuduğunuz için teşekkür ederim.Diğer yazılarda görüşmek üzere 🙂

Related Posts

Facebook Comments