CTF: TryHackMe Pickle Rick Çözümü

Merhaba, bu yazıda Tryhackme’de bulunan Pickle Rick makinesinin çözümünü inceleyeceğiz. Openvpn bağlantısı sağlamakla ile ilgili bilgi almak istiyorsanız Tryhackme CTF ile ilgili ilk yazımızı okuyunuz. Bağlantı sağlandıktan sonra Tryhackme’de bulunan makine deploy edilir ve makinenin ip adresi öğrenilir. Bu çözümde kullandığım ip adresi 10.10.239.3 oldu.

 

 

nmap -Pn -sS -sV 10.10.239.3 komutu ile port taraması yapılır. 22(ssh) ve 80(http) portunun açık olduğu gözüküyor.

 

 

http://10.10.239.3/ sayfasına gidildiğinde Rick’in Morty’den yardım istediği bir mesaj sayfa çıkıyor. Mesajın son kısmında Burp’in ne olduğunu bilmiyorum, parola buradaydı adlı kısım göze çarpıyor. Bu yüzden sağ tık, view page source denilerek sayfanın kaynak kodu kontrol edilir.

 

 

Sayfanın kaynak koduna gidildiğinde kodun açıklama kısmında Username: R1ckRul3s yazısı bize bir kullanıcı adı bilgisi veriyor. Bu kullanıcı adının kullanılabilmesi bir giriş paneline ve parola gerekiyor. Bu giriş panelinin ve parolanın olabileceği url’leri bulabilmek için dizin taraması yapılması gerekli. Dizin taraması yapmak için gobuster aracını tercih ettim.

 

 

gobuster dir -u http://10.10.239.3/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,html,txt  komutuyla dizin taraması başlatılır.

Tarama sonuçlarına bakıldığında giriş panelinin /login.php olduğu anlaşılıyor. Giriş panelinden önce parola bulmak için diğer dizinlere bir göz atılır. http://10.10.239.3/robots.txt bakıldığında “Wubbalubbadubdub” şeklinde Rick’in ilk sezonda çok kullandığı bir söz karşımıza çıkıyor. Diğer dizinlere kontrol ettiğimde önemli bir şey bulamadım.

 

 

Ana sayfanın kaynak kodunda bulanan kullanıcı adı Username: R1ckRul3s ile http://10.10.239.3/robots.txt sayfasında bulunan “Wubbalubbadubdub” parola olarak denendiğinde giriş başarılı oluyor.

 

Giriş yapıldıktan sonra bir komut paneli ile karşılaşılıyor. ls komutu ile tüm dosya ve klasörler listelendiğinde Sup3rS3cretPickl3Ingred.txt dosyası sıradan bir dosya olmadığı anlaşılıyor.

Bu dosyanın içeriği cat komutu ile kontrol edilmek istendiğinde komut engelleniyor. Artık bu aşamadan sonra komutu çalıştırmak için shell sisteminde yetki kazanılması gerekmektedir.

 

 

Bu sistemi netcat servisi ile dinleyebilmek için python reverse shell komutu gerekli. Öncelikle makinenin python 2 mi yoksa 3 mü kullandığı kontrol etmek için dizin yolunu kontrol eden which komutu kullanılabilir. which python 2 ile bir sonuç alınamadı. which python 3 ile python 3’ün bulunduğu dizin ile karşılaşılıyor.

En uygun reverse shell komutunu bulmak için Google’a python reverse shell cheat sheet yazılır ve aratılır. Birçok komutun bulunduğu cheatsheet github sayfasını açtım. Github sayfasına buradan ulaşabilirsiniz.

Sayfada python kısmına gelindikten ilgili komut kopyalanır.

Reverse shell komutu sayfada çalıştırmadan önce nc -lvnp 4444 komutuyla 4444 portunda netcat servisi çalıştırılır.  ip addr show tun0 komutu ile inet kısmından kendi ip adresinizi öğrenebilirsiniz. Bu öğrenilen ip adresi netcat bağlantısının yapılabilmesi için reverse shell komutunu düzenlerken kullanılacak. Netcat çalıştırıldıktan ve düzenleme yapıldıktan sonra komut çalıştırılır. Komutun python3 ile başladığına ve connect kısmında kendi ip adresinizin olduğuna dikkat ediniz.

Shell erişimi başarı ile sağlanıyor.

 

 

Bu aşamadan sonra sistemde araştırma yapma vakti başlıyor.

ls

cat Sup3rS3cretPickl3Ingred.txt komutuyla ilk sorunun cevabına ulaşılır.

cd /home/rick

cat * komutuyla ikinci sorunun cevabına ulaşılır.

Son sorunun cevabı root dizininde. Root dizinine ulaşmak içinde root yetkisine sahip olmak gerekir. Bu sistemde yetki yükseltme komutları için hiçbir önlem alınmamış. O yüzden herhangi bir root yükseltme komutu ile yetki yükseltilebilir. Ben root yükseltmek için sudo bash komutunu kullandım. İlerleyen zamanlarda Linux’da yetki yükseltme işlemlerini başka bir yazıda detaylı bir şekilde anlatacağım. Şimdi yetki yükseltildikten sonra sırasıyla:

cd

cat 3rd.txt komutuyla son sorunun cevabına da ulaşılır.

 

 

About The Author

One Response

  1. Kierkegaard 13 Nisan 2023 Yanıtla

Reply