Zaafiyetli Makine Çözümleri 514 views 2

TryHackMe Daily Bugle Çözümü

Temelden alacağımı belirtmiştim fakat, makine çözümlerine de olabildiğince yer vermek istedim, ara ara paylaşmak istiyorum sizlerle.

O zaman başlayalım, makinemizi “tryhackme” üzerinden deploy ettikten sonra benim ilk işim portları taramak oluyor. Nmap aracım ile taramayı şu şekilde başlatıyorum.
https://tryhackme.com/room/dailybugle

Ve “nmap” çıktım şu şekilde;
JoomScan Aracı

Göründüğü üzere 80 portu açık. Zaten ilk sorumuz “Joomla version” sorusu, yani bizden Joomla versionu istiyor. Bunun için ise “joomscan” aracımı kullanıyorum, version dışında tabi ki bana farklı bilgileri de getiriyor.
Şu şekilde “joomscan” aracını kullanıyorum;

Çıktısı ise şöyle;

joomscan sonucu
SQLi Exploit

Farklı dizin bilgilerini de almış olduk böylelikle, en önemlisi hatta içlerinde tek önemli olan “adminstrator” dizini. Yani sitenin admin paneli.
Daha sonra “Joomla 3.7.0” versionunda SQLi zaafiyeti olduğunu öğreniyorum. Ve linkini vereceğim scriptle karşılaşıyorum. Tek yapmam gereken scripte IP adresi vermek, gerekli işlemleri kendisi hallediyor.
https://www37.zippyshare.com/v/ZUuV85y2/file.html
Ve aracı şu şekilde çalıştırıyorum:

Shell Upload

Resimde de göründüğü üzere bana kullanıcı adını “jonah” olarak ve parolayı şifrelenmiş olarak veriyor. Aldığım şifrelenmiş parolayı “john” aracı ile kırıyorum. Admin paneline giriş yaptıktan sonra shell alıyorum.
https://github.com/pentestmonkey/php-reverse-shell

NetCat Kullanımı

Shellimi upload ettikten sonra “netcat” ile shell’de belirttiğim “1234” portunu şöyle dinlemeye alıyorum:

Evet shelli almış oldum. Karşılaştığım çoğu makinede “user.txt” dosyası “/home/user/” dizini içerisinde bulunuyordu. Bu makinede de deniyorum ancak, “jjameson” adlı kullanıcıya ait olduğunu görüyorum.

Dizinleri biraz kurcaladıktan sonra “/var/www/html” dizini içerisinde “configuration.php” dosyası olduğunu görüyorum. Aşağıda ki komut ile okuyorum

Linux sistemlerde * “yıldız” karakteri şekildeki gibi bir kullanımda başı “conf” olan bütün dosyaları okumamızı sağlıyor. Farklı kullanım şekilleri var ancak onlara Linux kategorinde açacağım konularda değinmek istiyorum. Şimdi konumuzdan sapmayalım.
Okuduğum dosya şu şekilde:

Bash Alma

Göründüğü üzere dosya içinde parola bulunmakta. Hemen makinenin veritabanına giriş yapmaya çalışıyorum, ancak sonuç elde edemiyorum. Aklıma parolayı “jjameson” kullanıcısı için denemek geliyor. Ancak kullanıcı değişebilmek için öncelikle “sh” a ihtiyaç duyuyorum ve şöyle “sh” alıyorum:

Kullanıcı Değiştirme

“sh” aldıktan sonra “su jjameson” komutu ile kullanıcı değiştirmek istiyorum ve “configuration.php” dosyası içinde bulduğum parolayı deniyorum. Ve artık “jjameson” kullanıcısındayım.

Artık “/home/jjameson” dizini içerisindeki “user.txt” dosyasını okuyabilirim. Flag dosyanın içinde bulunuyor.
Artık sıra root kullanıcısını geçmekte. Hint almadan yapamıyorum 🙂 Hint şu şekilde:

Site adresine gidiyorum ve makinenin etiketlerinde “yum” komutunu görüyorum. Ve “nmap” taramasında da göründüğü üzere “CentOS” yüklü bir makine.

“Yum” ile Root Olma

İpucunun bana verdiği siteye gidiyorum ve “yum” anahtar sözcüğünü aratıyorum. Ve nasıl “sudo” yani “Super User” kullanıcısı olacağımı görüyorum.

Burada kısaca dosya oluşturup, root yetkisi alıyoruz.
Ancak satır satır yazmamız gerekiyor. Satır satır yazdıktan sonra “root” olup son flagı okuyorum.

Hiç Benzer Yazı Bulunamadı Malesef :(

{0xc01d}

“TryHackMe Daily Bugle Çözümü” üzerine 2 yorum

  1. Yakup Demir dedi ki:

    Emeğine sağlık güzel çalışma

    1. 0xc01d dedi ki:

      Teşekkür ederim.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir