Hack the Box – CozyHosting – WriteUp

PwnLab.Me

Admin
Katılım
21 Ocak 2024
Mesajlar
202
Tepkime puanı
9
Puanları
18
Emre Aktaş tarafından yazılmıştır.

Selamlar, bu yazımda sizlere Hack the Box platformunda bulunan CozyHosting makinesinin çözümünü göstermeye çalışacağım.

Hedefimize ait basic bir nmap çıktısı.


1*_zKPuMEImXgaU6az40a2Jw.png


Çoğu durumda ilgilimizi çeken ilk nokta http servisi olur. Bu durumda web sayfasına bir ziyaret gerçekleştiriyoruz.

/etc/hosts dosyanızı aşağıdaki şekilde düzenlemeyi unutmayın.


1*rE7GXtxaOBaB-shXgIZJtg.png


İlgili web sayfamıza ulaştıktan sonra dizin keşfi yapıyorum ve ilgili çıktımız.


1*6TaJOTcnXAqK4_zGaVUR8Q.png


İlgimizi çeken noktalardan bir tanesi /actuator/sessions diğeri ise /admin dizinine bir yönlendirme olduğu.


1*Z78B9ZlQRoVHAqj-Mxmm_A.png


/actuator/sessions dizinine gidiyorum ve bazı sessions bilgilerinin tanımlandığını hatta “kanderson” isimli elemanın session bilgisini görüntüleyebildiğimizi fark ediyoruz.

Burada “kanderson” isimli elemanın session bilgilerini kullanarak bir login denemesi yapabileceğimizin farkında olmamız gerekiyor.

Burp Suite ile araya girerek ilgili isteği aşağıdaki şekilde yakalıyorum. Sonrasında tabi ki JSESSIONID değerine bulduğumuz session bilgisini giriyorum.


1*3vYU6Xh4gviLlV3ZOdFZ0A.png


Daha sonra direk dashboard’a yönlendirildiğimizi görüyoruz.


1*2OT1CTpi6j__ntwWEYOmkQ.png


Dashboard ekranında atak vektörü sayılabilecek noktalar ararken Connection Settings kısmında Hostname ve Username adında iki input alanının olduğunu fark ediyorum.

Bu alanlara rastgele değerler atayarak Burp Suite ile denemelerimizi gerçekleştirmeye çalışalım.


1*3Dq1Y444oaBj6Fj7g3fC4Q.png


‘Username’ bölümünü boş bırakırsak bir SSH komutuyla ilgili bir hata gözlemliyoruz, bu da bu bölümde olası bir Komut Enjeksiyonu güvenlik açığı olabileceğini gösteriyor.

Daha sonra ‘Username’ parametresine farklı denemeler yaparak komut enjekte etmeye çalışıyorum.

Burada komut enjeksiyonunu başarılı bir şekilde uygulayabilmek için önceki SSH komutunu sonlandırmamız gerekiyor.

Ekran-goruntusu-2023-11-26-213134-300x58.png


Yukarıda ki ifade ile SSH komutundan kaçınıp kendi komutumuzu karşı tarafta çalıştırabiliyoruz. Şimdi shell alabilmek icin bir netcat dinleyicisi başlatalım.


1*N4NRhBI_wSYhbK1-Lh_1rQ.png


Daha sonra ilgili payloadımızı yazarak repeater ile isteğimizi gönderip shellimizi alıyoruz.


1*onfgrDpOQqjt4q-BrY7B-A.png


Bu adımda ilgili hedeften shell aldıktan sonra linpeas ya da linenum gibi dosyaları karşı tarafa aktarıp sistem hakkında daha detaylı bilgiler edinebilirsiniz.

Ayrıca shellimiz etkileşimsiz bir şekilde geldiğinden ötürü shelli geliştirebilmek adına farklı adımlar uygulayabilirsiniz.

Şimdi ilgili dizini listeliyoruz ve cloudhosting-0.0.1.jar isimli bir jar dosyasının olduğunu fark ediyoruz.

Bu dosyayı python kullanarak kendi saldırı cihazıma aktarabilirsiniz.

Transfer işlemi bittikten sonra dosyayı ayıklıyorum.


1*zehMie5VEzW2KapHdOokqQ.png


Biraz kurcalama işleminden sonra yukarıda görebileceğiniz gibi bazı kritik bilgilerin bulunduğu bir veritabanı dosyası ile karşılaşmamız gerekiyor.

Daha sonra aldığım shell üzerinden veritabanına bağlantı sağlamaya çalışıyorum.


1*B-cG07BnKH8ZXmnEwx3BFQ.png


Database’de ilgili kritik bilgilere erişebilmek adına temel psql komutlarına buradan bakabilirsiniz.


1*6A9f63yYKt2qXSePRtujLg.png


Ve parola kırma aşaması


1*rv_zdPN_0bVd4KGtWJeWIA.png


İlgili parolayı kırdıktan sonra SSH bağlantısı deniyoruz.


1*g-_Ct4DIe8TyKTTPVzPaGQ.png


Ve küçük bir yetki yükseltme kısmı


1*USwBzzN26hgFVu-nDP8-lw.png


>>>>>


1*IayguPJkDod74H11H4OU3g.png


Tebrikler(Congratulations)
 
Moderatör tarafında düzenlendi:
Geri
Üst