İyi günler Türk Hack Team
bugün Pickle Rick CTF'ini çözüceğiz.
İlk önce TryHackMe odasına baktığımızda olayı hikayeleştirildiğini görüyoruz. Hikayeye göre Rick'i turşudan insan'a çevirecek 3 adet malzeme varmış. Bizden bunları bulmamız isteniyor.
Eğlenceli bir odaya benziyor. Toplam 3 adet cevaplamamız gereken soru var. Bunların 3'üde Rick'in ihtiyacı olan eşyalarmış. Vakit kaybetmeden başlıyalım. VPN vb kurulumunu bilgiğinizi farz ederek o kısımları geçiyorum.
İlk başta makina hakkında bilgi edinmemiz gerekiyor.
Bash:
nmap -sC -sV 10.10.13.185
Evet gördüğümüz üzere 2 adet port açık. Birisi 22 SSH portu. Diğeri ise 80 HTTP portu. Evet ayrıca makina hakkında bazı fikirlerimiz oluştu. Simdi web sayfasını görüntiliyelim.
Burada bize şifresini kaybetiğinni söyliyor ve bizden yardım istiyor. Simdi biraz bu sayfayı karıştıralım. Sayfanın kaynak kodlarını bulup incelediğimizde...
Rick'in kullanıcı adını bulduk "R1ckRul3s". Simdi bir admin paneli gibi bir panele erişim sağlamaya çalıştığımızda kullanıcı adı bulmak için ekstra bir çaba harcamıyacağımı bilmek beni mutlu etidiyebillirim.
Simdi ise gizli olan dosyaları veya dizinleri bulmamız için bruteforce saldırısını uygulamamız gerekiyor.
Burada ilk saniyelerde toplam 3 adet dizin buldu. Bunlar sırasıyla robots.txt, portal.php son olarakta assets. Arka planda çalıştırmaya devam ediceğim. Belki başka dizinlerde bulur. İlk başta robots.txt adlı dosyayı ziyarete gidiyorum.
Burada bir yazı karşıma çıktı fakat bir anlam verebildiğim söylenemez. Belki işime yarıyabillir. Simdi ise 2 inci sıradaki portal.php adlı sayfaya gidiyorum.
Burada benden Username yani kullanıcı adı istiyor. Hatırlarsınız ana sayfanın kaynak kodlarında Rick'in username'i diye bir yazı vardı. Muhtemelen onu burada kullanıcağım. Ardından bundan önce robots.txt dosyasında bulduğum yazıyıda şifre olarak denedim ve bir panel açıldı.
Gördüğünüz üzere komut yazabileceğim bir kutucuk var. Fakat kaynak kodları karıştırdığımda "Vm1wR1UxTnRWa2RUV0d4VFlrZFNjRlV3V2t0alJsWnlWbXQwVkUxV1duaFZNakExVkcxS1NHVkliRmhoTVhCb1ZsWmFWMVpWTVVWaGVqQT0==" diye bir yazıya ulaştım. Bu'da simdilik burada kalsın belki ileride işime yarar.
Simdi bu komut kutucuğuna temel Linux komutlarını girdim ve sasırtıcı şekilde çalıştığını gördüm.
Ayrıca gobuster'e geri dönecek olursak toplam 3 adet daha yeni dizin bulmuş fakat zaten biz bu dizinleri Komut Panel'inde görebilliyoruz. Bahsetiyim dizinler denied.php, clue.txt ve son olarakta /server-status. Fakat ilginçtirki Komut Panel'inde login.php diye bir dosya olduğunu görüyorum. Laikin bu dosyaya erişmeye çalıştığımda beni tekrardan portal.php'e yönlendiriyor. Ayrıca diğerlerinden farklı olarak bir txt dosyası daha bulduk. "Sup3rS3cretPickl3Ingred.txt" simdi bu txt dosyasını incelememiz gerekiyor.
Tarayıcı üzerinden dosyayı açtığımda "mr. meeseek hair" böyle bir metin ile karşılasıyorum. Galiba ilk malzemeyi buldum. Ve suanda fark etiğim bir şeyi'de sizinle paylaşmak isterim. Komut Panelin'de gördüğüm "clue.txt" adlı dosyanın içerisine girdiğimde bana dosya sisteminin içerisine bakmam gerekdiğini söylüyor. Normalde ilk başta dosya dizilimini açıp ardından dosyalarına bakmaya çalıştım fakat uyguladığım komutlar tek seferlik olduğundan dolayı aynanda iki komut kullanmak gibi bir yönteme başvurdum.
Kod:
cd /home/rick; ls
Ve sanırsam ikinci malzemeyi bulduk. Fakat kullandığımız komutlar tek seferlik geçerli olduğundan gene söyle bir komut kullanmamız gerekecek
‘second ingredient’ içinde bulunan yazıyı almamız için.
Bash:
cd /home/rick;cat ‘second ingredient
Ama cat yerine bir sürü alternatifimiz var. Tac, nl ve less'i kullanabillirsiniz. Ben less'i kullanıcağım.
Bash:
cd/home/rick; less ‘second ingredient’
Sonuç olarak 2'inci malzememizi'de bulduk. Fakat 3'üncü maalzemeye geldiğimizde normal bir user'ın erişibildiği yerlere baktım fakat bir sonuç alamadım. Muhtemeln bir root dizisinin içerisinde. En basit'inden baslamaktan zarar gelmez diyerek /root dizisinin içerisine bakalım.
Bash:
sudo ls -al /root