KB-VULN: 1 Write-Up
Merhaba. Bu yazımda KB-VULN: 1 isimli makinenin çözümünü yapacağım. Makineye Vulnhub üzerinden ulaşarak indirebilirsiniz. KB-VULN: 1 makinesi kolay seviyede ve genel olarak enumeration ile ilerleyen bir zafiyetli makinedir. Makine user.txt ve flag.txt’nin alınmasıyla bitirilmiş olacak.
İlk olarak netdiscover ile makine ip adresini tespit ediyorum.
Daha sonra hedef ip adresine nmap taraması yapıyorum.
Görüldüğü gibi 21 ve 80 numaralı portlar açık. İlk olarak 80 numaralı portta çalışan web adresini ziyaret ediyorum.
Daha sonra web adresine dizin taraması yapacağım fakat o sırada kaynak kodlara göz atıyorum.
Kaynak kodlarda bir kullanıcı adı buluyorum. Bu bilgi ile açık olan ssh portuna brute force saldırısı yaparak giriş yapmayı deneyebilirim. Bu bilgiyi not edip dizin taraması ile devam ediyorum.
Gobuster ile dizin taraması sonuçlanıyor ve dizinleri tek tek ziyaret ediyorum. Ve /fonts dizini altında backup.txt isimli bir belge ile karşılaşıyorum.
Dosyayı açıyorum ve içerisinde base64 ile encode edilmiş bir veri bulunmakta.
Bu veriyi decode edip notlarım arasına ekleyerek devam ediyorum.
Web adresini inceledikten sonra burada elde ettiğim kullanıcı adı ile ssh servisine hydra kullanarak bir brute force atak deniyorum.
Yukarıda görüldüğü gibi atak sonucu parolayı tespit ediyorum. Daha sonra elimdeki veriler ile ssh servisine bağlanıyorum.
Bulunduğum dizinde user.txt dosyasını okuyarak ilk bayrağı alıyorum.
Daha sonra .bash_history kontrol ediyorum. Sysadmin dizininde yer alan .bash_history de önemli bir şey elde edemiyorum. Ftp dizinine gidip baktığımda burada yer alan .bash_history kontrol ediyorum ve önemli bilgiler elde ediyorum.
.bash_history de yer alan komutlar ile 00-header dosyasını açıyorum ve burada kb servera hoş geldin mesajı verilen bir komut görüyorum. Bu dosya yönetici hakları ile çalıştığı için istediğim komutu buraya yerleştirerek kullanabilirim.
Buraya whoami komutunu yerleştirip dosyayı çalıştırıyorum (ssh bağlantısını kesip tekrar bağlanarak yönetici hakları ile komut çalıştırılıyor) ve sysadmin yanıtını başarılı bir şekilde alıyorum.
Dosya içerisine bash reverse shell kodunu ekliyorum ve ilgili portu dinlemeye alıyorum.
Ssh bağlantısını sonlandırıp tekrar bağlantıyı kurduğumda reverse shell bağlantısını alıyorum ve root olarak erişim sağlıyorum.
Daha sonra /root dizinine giderek flag.txt okuyorum ve çözümü bitiriyorum.
Diğer bir çözüm yolu olarak ise, flag.txt dosyasını okumak için bu dosya içerisine root dizine gidip flag.txt dosyasını okuyacak şekilde düzenliyorum ve kayıt ediyorum.
Daha sonra ssh bağlantısını sonlandırıp tekrar bağlantı sağlıyorum ve flag.txt içeriğini ekrana yazdırıyorum.
Başka yazılarda görüşmek üzere.
Eline sağlık üstad ????
Teşekkür ederim 🙂