Try Hack Me Overpass Çözümü
Try
Hack Me ‘de bulunan Overpass odasının çözümünü anlatacağım.
Açıkçası mükemmel bir ticari
başarı!
Bu kutuda gizli bir TryHackMe
abonelik kodu var. Onu bulup etkinleştiren ilk kişi bir aylık ücretsiz abonelik
kazanacak! Zaten abonesiyseniz, kodu neden bir arkadaşınıza vermiyorsunuz?
GÜNCELLEME: Kod artık talep
edildi.
Makine 2020/09/25 tarihinde biraz
değiştirildi. Bu yalnızca makinenin performansını artırmak içindi. Süreci
etkilemez.)
Burada bize odanın hikayesinde
bahsetmiş daha sonra root.txt ve user.txt flag değerlerini bizden istemektedir.
Hedef makineyi deploy edip başlıyoruz.
İlk olarak hedef makineyi tanımak
için nmap taramasını gerçekleştirdim.
sudo nmap -A 10.10.188.59
ssh ve http portunun açık olduğunu öğrendim. Hemen internet tarayıcımdan hedef ip adresine giriş gerçekleştirdim ve karşıma;
Burada overpass uygulaması hakkında bilgi veriyor.
web sitesini incelemeden önce gobuster taramasını da gerçekleştiriyorum.
gizli dizinleri keşif ettik.
Web sitesi üzerinde araştırma
yapıyorum ilk olarak sayfa kaynağına bakarak elde edebileceğim ipuçlarına
bakıyorum.
/main.css kaynak kodlarını inceledik işimize yarayacak pek bir şey bulamadık.
/aboutus dizinine baktık bu arada
inceleme yaptık pek bir şey elde edemedik.
/admin dizinine baktım admin
giriş paneline benziyordu sqli zafiyeti denedim en çok kullanılan admin- admin,
admin- password denemelerim boşa çıkt :)
sayfanın kaynak koduna baktım.
farklı javascritplere ulaştım
main.js inceleyince;
login.js;
Burada owasp top 10 da bulunan Broken
Authentication zafiyetini görüyorum. Broken Authentication zafiyeti kimlik
doğrulamasında fonksiyonların yanlış uygulaması spunucunda ortaya çıkar burada
session token girdiğimiz anda bizi içeri almasını için ayarlanmış cookie editör
eklentisi ile cookie değeri girmeye çalışacağım (cookie editör firefox, chrome
gibi tarayıcışarda cookie eklememiz değiştirmemize yardımcı olan bir eklentidir.)
kayıt edip sayfayı yeniliyorum.
(Overpass Yöneticisi alanına hoş
geldiniz
Windows, Linux, MacOS ve daha
fazlasını destekleyen güvenli bir şifre yöneticisi
Sürekli şifreni unuttuğuna göre
James, senin için SSH anahtarları ayarladım.
Bunun şifresini unutursanız,
kendiniz kırın. Senin için bir şeyler tamir etmekten bıktım.
Ayrıca, bu "Askeri
Sınıf" şifreleme hakkında gerçekten konuşmamız gerekiyor. - Paradoks)
görüldüğü gibi bize James kullanıcısı adına bir RSA keyi
vermektedir bunu kullanrak ssh bağlantısını sağlayabiliriz.
elde ettiğimiz key değerini nano
editörü sayesinde içerisinde kaydediyoruz.
ssh bağlantısını gerçekleştiriyoruz.
başarılı bağlantı gerçekleştiremedik rsa_id parolasını istiyor ve bunun hakkında bir bilgimiz yok john yardımıyla bulmaya çalışacağız.
ssh2john yarıdımyla jhın aracının
ssh keyini bulabilmesi için uygun dosyaya dönüştürüyoruz.
daha sonra john yardımıyla
bulmaya çalışıyoruz.
james13 olarak parolayı bulduk hemen ssh bağlantımızı gerçekleştiriyoruz.
başarılı bir şekilde bağlantımızı gerçekleştirdik.
burada dizinlere gezinip user.txt
okuyabiliriz.
user.txt flag değerimizi girdik.
biraz dizinlerde gezinmeye
çalışıyoruz vermiş olduğu ipucuları bulmaya çalışıyoruz.
görüldüğü gibi kullanıcı kısıtlı haklara sahip. Şimdi root yetkisine yükselip root dizinine erişip root.txt dosyasını okumalıyız.
burada bize sudo parolasını
sormaktadır maalesef yine bilmiyoruz :)
cat /etc/crontab
komutunu çalıştırarak Curl, root tarafından kullanıldığından, bir şekilde onu
kullanırsak, root erişimini elde edebiliriz. curl tarafından bağlantıyı
sağlayabilmek için /etc/hosts altında kendi makinemizin ip adresini yazmalıyız.
host dosyanı ayarladıktan sonra kali makinemde bağlantıyı sağlayabilmek için /downloads/src/buildscript.sh altına reverse Shell oluşturuyorum.
yazmış olduğumuz revers Shell çalıştırma yetkisini veriyoruz.
Ardından http sunucumuzu 80
numaralı bağlantı noktasından başlatır ve bir bağlantının olmasını bekliyoruz
şimdi erişimi elde ettiğim
makineye gelip yazmış olduğum bash scriotine bağlantı gerçekleştiriyorum.
bash üzerinde komut
çalıştırabiliyorum whoami komutuyla root olduğumu görebiliyorum. root dizinine
erişip root.txt okuyabiliyoruz.