Selamlar bugün sizlerle beraber tryhackme'nin gallery adındaki makinesini çözeceğiz. Öncelikle bağlantımızı kontrol edip ardından ilgili ip adresini "etc/hosts" a aktardığımızı varsayarak bilgi toplama işlemine başlayalım.

Öncelikle nmap ile kısa bir tarama yaptım ve 80 portu ila 8080'in açık olduğunu öğreniyorum. Öncelikle default http portunun dizinlerini öğrenmeye çalışacağım. Bunun için dirb aracını kullanıyorum. (Normalde common.txt worldlistini kullanır, dilerseniz "-w" parametresi ile daha farklı wordlistler ile tarayabilirsiniz)

Biraz da /gallery/ klasörüne bruting işlemi yaptım ama beni yönlendiren login sayfasından başka en ufak birşey çıkmadı. Sonra siteye whatweb aracı ile bakmak istediğimde kullandığı scriptin adını almayı, ve mail adresini bulmayı başardım.

İnternette bu scriptin exploition işlemlerini araştırırken karşıma 2 adet kritik zafiyet geldi. Birincisi "id" tabanlı error based sql açığı olmakla beraber RCE açığı da bulunmaktaydı. Herhangi bir id parametresi olmadığından ve sürekli logine yönlendirildiğimden login bypass denedim ve admin olarak panele ulaşabildim.

Sistemi biraz araştırıyorum ve uplaod seçeneği karşıma çıkıyor. Hemen vakit kaybetmeden alfamı sokuyorum ve tek yapmam gereken upload ettiğim pathi bulmak oluyor. (Path için yüklenen fotoğrafların yolunu bulun eğer .php yemiyorsa .php.jpeg .php5 .phtml veya mime typeları değiştirin)

Site içerisinde çok zaman kaybetmeye gerek yok ben direk back connect olacağım. Symlink gibi yöntemler denesem de pek birşey çıkaramadım. Doğrusu içeriden devam etmek güzeldir

Görüldüğü üzere 4444 portundan reverse shell çektik. Ardından python TTY atıp ufak bir komut çalıştırdım. Sistem klasörlerinde biraz geziyorum. Ve /var klasörü altında ufak bir backup buldum. Klasörü /tmp ye taşıma sebebim read & write & execute edemediğim için.

Lakin dosyayı atamadım, biraz klasörde takılırken içeri araştırmak istediğim ve .bash_history' ye bakmaya karar verdim. Hem /home klasöründeki user bilgisi hemde password....

Şimdi artık www-data'dan çıkıp mike kullanıcısına geçme vakti gelmiş "su mike" yazıp passwordu veriyorum. Ardından /home klasörüne girip içeridekilere bakarken ilk flag :
Buraya kadar tamam, sistemde ilerlemek için cron'lara SUID lere bakarken ufaktan bi "sudo -l" vereyim dedim. GFTO ile nano'ya şansımızı deneyeceğiz.

MEDYA ATMA SINIRINA UALŞTIK YENİDEN ALTTAN DEVAM EDELİM

Öncelikle nmap ile kısa bir tarama yaptım ve 80 portu ila 8080'in açık olduğunu öğreniyorum. Öncelikle default http portunun dizinlerini öğrenmeye çalışacağım. Bunun için dirb aracını kullanıyorum. (Normalde common.txt worldlistini kullanır, dilerseniz "-w" parametresi ile daha farklı wordlistler ile tarayabilirsiniz)

Biraz da /gallery/ klasörüne bruting işlemi yaptım ama beni yönlendiren login sayfasından başka en ufak birşey çıkmadı. Sonra siteye whatweb aracı ile bakmak istediğimde kullandığı scriptin adını almayı, ve mail adresini bulmayı başardım.

İnternette bu scriptin exploition işlemlerini araştırırken karşıma 2 adet kritik zafiyet geldi. Birincisi "id" tabanlı error based sql açığı olmakla beraber RCE açığı da bulunmaktaydı. Herhangi bir id parametresi olmadığından ve sürekli logine yönlendirildiğimden login bypass denedim ve admin olarak panele ulaşabildim.

Sistemi biraz araştırıyorum ve uplaod seçeneği karşıma çıkıyor. Hemen vakit kaybetmeden alfamı sokuyorum ve tek yapmam gereken upload ettiğim pathi bulmak oluyor. (Path için yüklenen fotoğrafların yolunu bulun eğer .php yemiyorsa .php.jpeg .php5 .phtml veya mime typeları değiştirin)

Site içerisinde çok zaman kaybetmeye gerek yok ben direk back connect olacağım. Symlink gibi yöntemler denesem de pek birşey çıkaramadım. Doğrusu içeriden devam etmek güzeldir

Görüldüğü üzere 4444 portundan reverse shell çektik. Ardından python TTY atıp ufak bir komut çalıştırdım. Sistem klasörlerinde biraz geziyorum. Ve /var klasörü altında ufak bir backup buldum. Klasörü /tmp ye taşıma sebebim read & write & execute edemediğim için.

Lakin dosyayı atamadım, biraz klasörde takılırken içeri araştırmak istediğim ve .bash_history' ye bakmaya karar verdim. Hem /home klasöründeki user bilgisi hemde password....

Şimdi artık www-data'dan çıkıp mike kullanıcısına geçme vakti gelmiş "su mike" yazıp passwordu veriyorum. Ardından /home klasörüne girip içeridekilere bakarken ilk flag :

Buraya kadar tamam, sistemde ilerlemek için cron'lara SUID lere bakarken ufaktan bi "sudo -l" vereyim dedim. GFTO ile nano'ya şansımızı deneyeceğiz.

MEDYA ATMA SINIRINA UALŞTIK YENİDEN ALTTAN DEVAM EDELİM