- 13 Kas 2022
- 25
- 23
Merhaba arkadaşlar bugün sizlerle tryhackme.com da bulunuan root me adlı ctf'i çözeceğiz.
Bunun için bize verilen vpn konfigürasyon dosyasından ağa bağlandıktan sonra start machine diyoruz ve başlıyoruz.
İlk önce bizden nmap ile keşifyapmamızı istiyor bunun için nmap -sV -sS -T5 -n 10.10.1.154 çalıştırdım
ve 2 portun açık olduğunu tespit ettim
22 => SSH portu
80 => HTTP portu
ve ilk 3 soruyu cevaplayabildik
alttaki iki soruyu cevaplamamız içinse gobuster çalıştırmamız gerekmekte
aslında dirb veya dirbuster 'da kullanabilirsiniz ancak gobuster bu ctf de daha çabuk sonuç verdi o yüzden bende onla gösteriyorum
çıktı şu şekilde:
4. soruda birşey istemiyor zaten bizden 5. cevapta biz 4 klasör bulduk ama 5 harf olan sadece panel oyüzden
/panel/ yazıp cevabı yolladık şimdi sıra sızmada
bunun için gobusterda bulduğumuz 4 dizinde gidiyoruz ama burda bizim işimize sadece
panel ve uploads sayfası yarıyacak.
bizim buraya çalışltırmak için php reverse shell payloadı girmemiz gerekli eğer kali linux kullanıyprsanız /usr/share/webshells/php-reverse-shell.php
konumunda bulabilirsiniz ama ben parrot kullanıyorum ama yinede bu dosyayı kalinin internet sitesinden indirdim.
Burda ip ve port değerlerini değiştirmeniz gerekiyor. Buraya ip ye openvpn den aldığınız ip yi yazmalısınız ona dikkat edin.
şimdi bu dosyayı panel kısmından upload edicez ama burda kara liste uygulaması var ve php uzantılı doyaların yüklenmesine izin vermiyor bu yüzden php4 olarak şansımı deneyeceğim.
evet şimdi uploads kısmına gidiyoruz ve dosyamızın üstüne tıklıyoruz ama tıklamadan önce oraya yazdığımız portu netcat ile dinlemeye alalım
ve tıklayalım
php4 yaptığımda çalışmadı birde php5 deneyelim
bu sefer çalışacaktır ve netcat te şöyle bir bağlantı aldım :
artık bizden istediği usert.txt flagını bulabiliriz bu flag ı bulmak için uğraşabiliriz yada daha kolayı
find / -name user.txt
şimdi sıra yetki yükseltme kısmında
bunun için suid izinlerine bakıyoruz
find / -perm -4000
Yukarıdaki komut bize 4000 (root) permissionuna sahip dosyaları gösteriyor çıktıda permsion denied olanlar çalıştıramadığımız anlamına geliyor .
Sonuç aldıklarımız ise çalıştırabildiğimizi gösteriyor burda benim dikkatimi çeken program python oldu
pythonla root olabileceğimizi sanıyorum bunun için /usr/share dizinine gidip
python -c 'import os; os.execl("/bin/sh", "sh", "-p")'
çalıştırıyoruz.
Bu arada OS kütüphanesi aslında programlarda terminale erişmemizi sağlayan bir kütüphane.
Artık root kullanıcısıyız
Bu günlük bu kadardı okuduğunuz için teşekkürler...
Son düzenleme: