Boot2Root: Kioptrix Level 4

Keşif

Netdiscover bize makinanın IP adresini veriyor:

Screen Shot 2017-07-15 at 20.41.43.pngBulunan IP adresi üzerindeki servisleri tarıyoruz:

Screen Shot 2017-07-15 at 20.43.08.png

enum4linux bize sistem üzerindeki kullanıcıları veriyor:

Screen Shot 2017-07-15 at 20.41.48.png

Zafiyet Analizi

Sunucuda çalışan servis versiyonlarından bir şey çıkmadı. Fakat ısrarla dediğim gibi; Bir yerde SQL varsa orada SQL injection da vardır.

Exploit

Web arayüzünde giriş ekranı bulunuyor. Burada biraz oynadıktan sonra john kullanıcısına parola olarak ” 1′ or ‘1’=’1 ” vererek giriş yapabiliyoruz ve kimlik bilgilerine ulaşıyoruz:Screen Shot 2017-07-15 at 20.41.55.png

SSH üzerinden john kullanıcısına bağlandığımızda kısıtlı bir shell ile karşılaşıyoruz. Elimizdeki imkanlarla “echo os.system(‘/bin/bash’);” komutuyla kısıtlı shellden çıkıyoruz.

“ps aux | grep root” komutuyla root yetkileriyle çalışan processlere ulaşıyoruz. MySQL root yetkileriyle çalışmakta.

root ile girmeyi denediğimizde root parolası olmadığını görüyoruz:

Screen Shot 2017-07-15 at 20.42.13.png

MySQL’de sys_exec çalıştırarak root olunabileceğini düşünerek lib_mysqludf_sys.so dosyasını makina üzerinde aratıyoruz:

Screen Shot 2017-07-15 at 20.42.18.png

Görüldüğü üzere ilgili dosya root yetkileriyle sistemde bulunmakta.

sys_exec kullanarak /bin/bash’i suid roota çeviriyoruz. Böylece bu dosyayı çalıştıran herkes, dosyanın sahibinin yetkileriyle (root) çalıştırıyor.:

Screen Shot 2017-07-15 at 20.42.29.png

MySQL’den çıkıp john ile “bash -p” komutuyla root shell elde ediyoruz:

Screen Shot 2017-07-15 at 20.42.43.png

Flag

Flag /root/congrats.txt’de bulunuyor. Root shellimiz ile okuyarak görevimizi tamamlıyoruz:

Screen Shot 2017-07-15 at 20.42.48.png

 

Reklamlar