Tryhackme Coldbox-Easy Walkthrough

Merhabalar bu yazımda tryhackme platformunda ki Coldbox makinesini çözeceğiz keyifli okumalar.

 

İlk önce nmap üzerinden agresif tarama gerçekleştirdim ve tarama sonucunda sadece 80 portundaki http servisinin açık olduğunu gördüm.

Bunun ardından websitesine gittim ve blog sitesine benzer bir site ile karşılaştım.

Site üzerinde bunun bir wordpress sitesi olduğu bilgisi verilmişti bende “wpscan” aracını kullanabileceğimizi düşündüm ama önce “gobuster” aracı ile gizli dizin taraması yaptım ve karşıma “/hidden” ve bazı wordpress sitelerinde olan dizinler çıktı.

İlk dikkatimi çeken “/hidden” dizinine gittim ve bir not ile karşılaştım notun içinde 3 tane isim vardı bunları “bruteforce” için kullanabileceğimizi düşünüp not aldım.

Daha sonra wordpress sitelerinde açıklık aramak için yazılan “wpscan” adlı aracı kullanarak sitede bulabileceğim bir zafiyet veya siteye tanımlanmış kullanıcı adları var mı ona baktım.

“wpscan –url <hedef site url> -e u” komutu ile wpscan aracını çalıştırdım ve mesajda bulduğumuz isimlerin siteye tanımlanmış kullanıcı adlarını elde ettim.

Ardından “gobuster” dizin taramasında bulduğumuz “wp-admin” dizinine gittim ve admin giriş panelinin olduğunu gördüm.

Artık “bruteforce” uygulayabileceğimize emin olduktan sonra sisteme bruteforce saldırısı denedim.

Ve sonunda bir kullanıcı adı şifre eşleşmesi yakaladık.

Evet şimdi admin giriş paneline gidip kullanıcı adı ve şifremiz ile giriş yapmaya çalışalım.

Ve evet giriş başarılı wordpress kontrol paneline erişmiş bulunuyoruz.

Şimdi sırada sisteme shell yükleyip sistemin komut satırına erişmek kaldı.

“themes” kısmındaki “editör” sayfasına gidiyoruz ve “404 template” bölümünün içine Shell kodlarımızı yapıştırmayı deneyeceğiz.

Kali Linux terminalime geri dünüyorum ve “locate webshell” araması yapıyorum.

Karşıma çıkan sonuçlardan “php-reverse-shell” adlı shell dosyamızı “leafpad” text editör ile açıyorum.

Ardından php kodlarının arasında ip kısmına kendi vpn ip’mi yazıyorum.

Ve “ctrl+a” ile tüm içeriği seçip “ctrl+c” ile kopyalıyorum ardından tarayıcıma geri dönüyorum ve “404 template” kısmındaki içeriği silip kopyaladığım Shell kodumu sayfanın içerisine yapıştırıyorum.

Daha sonra kali Linux terminalime geri dönüyorum ve “netcat” üzerinden “1234” numaralı Shell dosyamdaki portu dinlemeye alıyorum.

Ardından url üzerinde “404.php” dosyasının bulunduğu dizine gidiyorum ve ters bağlantıyı almaya çalışıyorum.

Ama maalesef henüz bir bağlantı alamadık.

Bunun çözümünü Google üzerinden araştırdığımda php komutu olarak bir Shell komutu çalıştırabileceğimizi ve bir bağlantı alabileceğimizi fark ettim.

Ve Google üzerinden “php reverse shell” olarak arattığımda bir sayfa ile karşılaşıyorum ve “<? php exec(); ?>” komutundaki parantez içerisinde bir shell yönlendirme komutu kullanarak ters bağlantı alabileceğimi söylüyor deneyelim bakalım.

Komutu kodun en üstünde bulunan php kodunun başlangıcına yazıyorum ve “save file” deyip kaydediyorum.

Bide şimdi deneyelim bakalım az önce gittiğimiz bağlantıya tekrardan gidiyoruz.

Not:eğer yukarıdaki url hiçbir şekilde bağlantı sağlamaz ise aşağıdaki resimde görünen “/?p=404.php” dizinini de deneyebilirsiniz.

Ve evet bu sefer başarılı bir şekilde ters bağlantımızı almayı başardık.

Aldığımız bağlantı kısıtlı bir kabuk erişimi sunuyordu ve aşağıdaki “python3” komutu ile kabuk erişimimizi yükseltmeyi başardım.

Sistem üzerinde “www-data” yetkisinde bir kullanıcıyız ve “user.txt” dosyasını okuyabilmemiz için “c0ldd” kullanıcı yetkisinde olmamız lazım genelde wordpress siteleri içerisinde “/var/ww/html” dizininde “config” dosyası bulunur ve bu dosyada veritabanı bilgileri yer alır bu dosyanın olup olmadığını görmek için “html” dizinine gittim ve olduğunu gördüm daha sonra “cat” komutu ile bu dosyanın içeriğini okudum.

Ve içerisinde mysql veritabanı bilgileri yer alıyordu.

Şifreyi aldığımıza göre sırada “c0ldd” kullanıcısına “su c0ldd” komutu ile geçiş yapmak kaldı.

C0ldd kullanıcısına geçiş yaptıktan sonra “home” dizini altındaki “c0ld” klasöründe “user txt” dosyasını buluyoruz.

Evet sırada root yetkisine geçip “root.txt” dosyasını okumak kaldı.

İlk önce denememiz gereken “sudo -l” komutunu kullandım ve root olarak kullanabileceğim bir komut var mı ona baktım.

Daha sonra 3 adet root yetkisinde çalıştırabileceğim komut olduğunu farkettim.

Benim kullandığım “/usr/bin/vim” komutu idi dilerseniz diğer 2 komutuda deneyebilirsiniz.

Aşağıdaki komutu çalıştırıp yetki yükseltmeyi denedim.

Ve bana “vim” uygulamasında bir root yetkisine sahip komut satırı verdi.

Ardından root klasörününü içine gidip “root.txt” dosyasını okumaya çalıştım ve başarılı bir şekilde root flag’ini aldım.

About The Author

Reply