⚠️ Bu yazı içerisindeki fotoğraflar imgur.com sitesine yüklüdür ve bu site Türkiye'de engellidir fotoğrafları görmek için proxy kullanınız!
🗣️ Yeniden merhaba uzun bir süredir blog yazmıyordum yine google botlarına ayıp olmasın ve geride okuyabileceğim birşeyler bırakayım diye çözdüğüm vulnhub’u paylaşmak istedim.
Öncelikle vulnhub’u indirip kurduktan sonra bizi böyle bir ekran karşılıyor çok garipsedim bu ekranı nedenide şu vulnhub’u çözdükten sonra farkettim açılış penceresinde aslında kısaca neler yapılacak yazılmış onları görsem daha kolay ve kısa sürebilirdi aslında.Siz siz olun girişleri okuyun xD.
Bize verilen local ip’ye girdiğimiz’de bizi böyle bir ekran karşılıyor :
Kaynak kodlarını ne kadar incelesemde resimlerden başka birşey çıkmadı, ikinci olarak klasik bir nmap taraması yaptım ve sonuçlar :
Çıkan sonuçlardaki versiyonlar’a yönelik bir sürü cve docsları var ama hemen onlarla uğraşmak istemedim.Eğer sonuç çıkmazsa yapacağım son şey olarak onu belirlemiştim, ama ondan önce bir dizin taraması yaptım dirbuster aracımızla :
Ve aniden elime 2 koz geçti ya wordpress’ten yürüyecektim yada upload dizininden.Öncelikle kolaylık olsun diye upload dizinine baktım ama oradan birşey çıkartamadım, ve wordpress dizinine girdim :
Bu şekilde bir sayfa bizi karşıladı klasik wordpress templatesi ve bir wikipedia linki, türkçe versiyonunu incelediğimde yeni bir bilgi öğrenmiştim ama hala vulnhub için elimde bir sonuç yoktu.
Ama sonuçta wordpress ve bizim wpscan aracımız var.Yapılan tarama sonucu
Wpscan’ımız aynı zamanda userimizin default olduğunu söyledi. kullanıcı adı ve şifreyi “192.168.0.122/wordpress/wp-login”e girdiğimizde kendimizi içeride buluyorduk.
Artık geriye bash’imize erişmek kalıyor, ben template içinde 404.php’ye atmaya karar verdim shell’imi :
Ve erişimimiz geldi :
Bundan sonra yapmamız gereken root erişimini almak ve flagimizi bulmak.
Küçük bir ‘config.php’ araştırması ile root şifremize ulaşabilirdik. Araştırmada kullanılan komut :
find / -name "config.php"
Araştırma sonucu baştada bulduğumuz ‘/upload’ dizininden bir ‘config.php’ dosyası çıktı.
İçini açtığımızda karşımıza “mysql database” şifreleri çıktı :
Merakıma yenik düşüp oradaki database şifresini root kullanıcımıza denemek istedim ama hiçbir sudo komutunu kabul etmedi :
Küçük bir google aramasından sonra bu sorunun python’daki pty modülü ile kolayca çözülebileceğini öğrendim ama bunu yazmak için ne python’u açabiliyordum nede nano ve onun gibi editörleri çalıştırabiliyordum.
Bu sorunuda echo ile /tmp(temporary) dizinine script kodlarımızı direkt yazarak çözdüm :
echo "import pty; pty.spawn('/bin/bash')" > /tmp/fuckbody.py
Son olarak sadece script’imizi çalıştırmak ve şifremizi denemek vardı :
Ve root’uz. Artık zaman flagimizi avlama zamanı.İlk olarak klasik home dizinine baktım ve 1. flagimiz oradaydı :
1.Flag : 2bafe61f03117ac66a73c3c514de796e
Ama bir sorun vardı bu flag’in yetkilerine baktığımda normal bir userde görebiliyordu aynı zamanda (/home/admin) dizinlerede girebiliyor’du, bende farklı flag arayışlarına çıktım.İlk flagimiz “flag.txt” olduğuna göre diğeride ya flag2.txt yada flag.txt diye başka bir dizinde olacaktı hiç uğraşmadan aşşağıdaki simple find command’ı yazıp iki farklı flagi’de aradım :
find / -name "flag2.txt" && find / -name "flag.txt"
Ve /root dizinimizde bir flag daha bulduk :
2.Flag : 8e3f9ec016e3598c5eec11fd3d73f6fb
Google botlarına teşekkürler iyi günler 🙂