Blog

Matrix 2 Makinesi Çözümü

1. Tarama ve Keşif Aşaması

İlk olarak makineyi network içerisinde tespit edebilmek için Netdiscover aracı ile tarama yaptım hedef IP adresini tespit ettikten sonra artık tarama ve keşif faaliyetlerime hedef makine üzerinde devam edebilirim.

 

 

İlk olarak Nmap ile sistemdeki portların ve bu portlar üzerinde çalışan servislerin tespitini sağlamakla işe başlayabiliriz.

 

 

Yukarıda görüldüğü üzere 5 adet port tespit ettik. Nmap çıktısını incelerken bazı şeyler dikkatimi çekti öncelikle bütün portlar web servisi bunun dışında 12322. port üzerinde Robots.txt nin açık olduğu ve içinde file_view.php sayfasının engellendiğini gördüm bu kısımdan ilerleyebileceğimi düşündüm.

Portları kontrol ettiğimde aşağıdaki gibi “400 BadRequest”  hatası verdiğini gördüm. Tüm portlarda aynı durum karşıma çıktı sadece 12321. port üzerinde hala erişimim yok.

 

Hata üzerindeki mesajı incelediğimde HTTP isteğinin HTTPS portuna iletildiğini fark ettim.  URL üzerinde “HTTPS:// “ eklediğimde bu sorunu da aştım. 

 

 

Portlar erişim sorunu çözdükten sonra artık diğer portlara bir göz gezdirelim.

 

1337. port üzerinde aşağıdaki gibi HTTP Basic Otantication ile giriş sayfası açıldı.

 

 

12320. port üzerinde ise shell ekranı karşımıza çıktı. Yani iki adet giriş alanımız var ancak elimizde ne şifre var, ne kullanıcı adı bunları tespit etmemiz gerek.

 

Geriye kalan 12322. port üzerinde aramalarımı derinleştirdim. Zaten robots.txt dosyasının bulunduğunu ve içeriğinde bir PHP dosyasını engellediğini biliyoruz. Şimdi bu dosyayı inceleyelim.

 

Engellenen dosyaya baktığımda LFI zafiyetinin bulunduğunu görüyorum sayfayı açtığımda herhangi bir şey çıkmasa bile kaynak kodlarında file parametresinin hatalı olduğunu bize bildiriyor. Burada LFI zafiyetini sömürerek bizim için gerekli olabilecek verileri bulmamız gerek. İki yol ile sömürebiliriz Burpsuite kullanarak veya curl ile direk çekerek, ilk burp ile denememe rağmen stabil olarak çekemedim.

 

Curl ile ilk olarak etc/passwd dosyasını okuyalım.

 

 

Daha sonra HTTP üzerinde nginx koştuğunu bildiğim için varsayılan olarak gelen şifre tutulma yerine bakmamız gerekiyor.

 

 

Kullanıcı dosyasının /var/www/p4ss/.htppasswd  içerisinde tutulduğunu gördüm şimdi bu dosyayı çekelim.

 

 

Yukarıda görüldüğü üzere kullanıcıadı:parolapaterni ile karşımıza çıktı ancak parolamız şifrelenmiş kırabilmek için john programına attım.

 

Yukarda görüldüğü üzere şifreyi kırdığımızda parolamız “admin çıktı” Şifreyi 1337. Portta denediğimizde sisteme giriş yaptık  bu port üzerinde tekrar tarama ve keşif işlemlerine başladım.

 

 

 

Yukarıda görüldüğü üzere kaynak kodlarında h1dd3n.jpg adında bir görsel olduğunu gördüm, bakalım görselde ne var.

 

 

Fotoğraf içerisine bir mesaj gömülmüş olabileceği için Steghide ile görseli dump ettim. Dump etmek için gerekli olan şifre ise herhangi bir yerde yoktu port üzerindeki sayfayı incelediğimde “n30” kelimesinin renklendirilerek eklendiğini gördüm denediğimde dump etmek için gerekli parolayı bulmuş olduk.

 

 

Dump ettiğimizde parolaya ulaştık artık ikinci adım olan shell’e girişi sağlayabiliriz.

 

 

2. Sistem Üzerinde Yetki Yükseltme İşleminin Gerçekleştirilmesi

 

 

Artık shell üzerinde giriş sağladık reverseshell ile kendi terminalimiz üzerinde daha rahat işlem gerçekleştirebiliriz.

Sistem üzerinde netcat olmadığı için daha gelişmiş hali olan socat aracını kullanarak  reverseshell bağlantısını gerçekleştirdik.

 

 

Bağlantıyı gerçekleştirdikten sonra artık sistem içerisinde tarama ve keşif faaliyetlerimizi gerçekleştirebiliriz. Sistemin sürümünü öğrendikten sonra yetki yükseltme exploitlerini araştırdım ancak elle tutulur sonuç bulamadım. SUID BIT istismarına yöneldim bunun için birkaç  komut ile araştırmaya başladım.

 

 

İşimize yarayacak bir tane tespit ettim şimdi bu programa bakalım. Programı incelediğimizde betikler çalıştırıp yetki alabileceğimizi fark ettim.

 

 

Programı aşağıdaki betik ile çalıştırdığımızda root yetkisine sahip olarak kullanıcı olarak işlem yapabiliyoruz. Aşağıda görülüdüğü üzere kendi içerisinde shell açtı.

 

 

Yukarıda görüldüğü üzere artık root yetkisine sahibiz.  Flagi okuduktan sonra işlem tamam.

 

Evet makine bu kadardı başarıyla root olduk.ve flagi okuduk.








Yorum Yapmak İçin Giriş Yapın.