CTF : TryHackMe Year of the Rabbit

Herkese merhaba. Bugün TryHackMe’de bulunan “Year of the Rabbit” odasının çözümünü inceleyeceğiz.

TryHackMe oda linki : https://tryhackme.com/room/yearoftherabbit

Hazırsan, hadi başlayalım. İlk olarak Openvpn bağlantınızın bağlı olduğunu kontrol et ve odayı başlatarak makinanın ip adresini al. Odanın erişebilir olduğunu kontrol etmek için cmd komut satırı üzerinden “ping makinenın_ip_adresi” ping komutu ile test et.

Artık başlayabiliriz. İlk adım olarak makinanın hangi portlarının açık olduğunu öğrenmemiz gerekiyor. Hangi portlar aktif ise ona göre saldırı gerçekleştireceğiz. Port tarama konusunda birden fazla araç mevcut. Biz bu araçların içinde en çok kullanılan NMAP aracını kullanacağız.

Komut : nmap -sS -sV -sC -Pn -T5 makinenin_ip_adresi

Komut içerisinde kullanmış olduğumuz -sS daha hızlı bir tarama için kullanılır -sV açık olan bir bağlantı noktasında hangi hizmetin çalıştığını belirlemeye çalışır -sC versiyon tespiti yapar -Pn ping atılmadan tarama yapmasını sağlar T5 agresif mod tarama yapmasını sağlar.

Nmap taramamız sonucunda üç adet portumuzun açık olduğunu gördük. 80 numaralı portumuz bir web sayfasını işaret ediyor. Hemen kontrol edelim. Bizi bir apache sayfası karşılıyor. İlginç bir şey bulabilir miyiz umuduyla hemen web sayfanın kaynak kodlarına bakıyorum. Ama şansım yaver gitmiyor. Herhangi ilginç bir şey ile karşılaşmıyorum.

Web sayfasında bizim göremediğimiz gizli dizinleri keşfetmek için “Directory Brute-forcing” zamanı. Gobuster aracı bu durumlar için en popüler olanı.

komut :  gobuster dir -u http://makinenizin_ip_adresi -w kelime_listenizin_konumu

Bir adet bizden gizlenmiş dizin bulduk. Dizinimiz /assets , hadi gizli dizini kontrol edelim.

Dizin içerisinde bize 2 dosya gözüküyor. RickRolled.mp4 dosyanın içerisine girilince bizi bir video karşılıyor. Videoyu izlemeye başladığımızda, video içerisinde yanlış yere baktığımızı söyleyen bir ses duyuyoruz. Dosyadan çıkıp style.css dosyasına giriyorum. Dosya içerisinde bizi ilginç bir şey karşılıyor.

Not satırına yazılmış iki satırlık yazı ile karşılaşıyoruz. “Birinin stil sayfasını kontrol ettiğini görmek güzel” notu altına bir sayfaya göz atmamız isteniyor. Direk sayfaya bakıyorum.

Benden java-script’i devre dışı bırakmamı istiyor. Java-script’i devre dışı bırakmadan tamam’a bastığımda beni bir youtube sayfasına götürdü. Java-script’i devre dışı bırakarak yeni bilgiler edinebileceğimi düşündüm.

java-script’i devre dışı bırakmak için yeni bir sekme açın ve about:config yazıp enter’a basın. Açılan sayfada arama çubuğuna javascript yazın ve javascript kapatma seçeneğini bulacaksınız.

Java-script’i kapattığımda beni bir yazı ve video olan bir sayfa ile karşılaştım.

Yazı içeriğini okuduğumda ipucunun burada olduğundan emindim. Ama bulamıyordum. Aklıma arka tarafta beni ipucuna yönlendirecek bir şeyler dönüp dönmediğine bakmak için burp suite çalıştırmaya karar verdim.

Kali makinalarda burp suite hazır yüklü olarak geliyor. Burp suite’i çalıştırıp, proxy sekmesine gidiyoruz. Open Browser basıyoruz. Açılan tarayıcı ekranına makine_ip_Adresi/sup3r_s3cr3t_fl4g.php adresine giderken burp suite aracı içerisinde intercept’i çalıştırıyoruz. Böylelikle trafiği yakalamış oluyoruz. İlk yakalanan trafikte ilginç bir şey bulamıyoruz. Forward edip gelen ikinci trafikte ise ilgimizi çeken bir adres ile karşılaşıyoruz. Gizli bir dizin bulduk.

Bulduğum gizli dizine gidiyorum.

Beni bir adet .png dosyası karşıladı. Dosyayı hemen indiriyorum.

.png üzerinde çeşitler şeyler denedikten sonra ilginç bir şey elde ettim.

komut : strings Hot_Babe.png

.png dosyasını açtığımda beni ftp için kullanıcı adı ve bu kullanıcı adı için bir parola listesi karşıladı. Bu şifreleri rabbit_ftp_passwords adında açmış olduğum bir metin dosyasına kaydettim.

Artık bir kullanı adımız ve bir şifre listemiz olduğuna göre “HYDRA” kullanma zamanı

komut : hydra -l ftpuser -P rabbit_ftp_passwords 10.10.24.199 ftp

Bingo. Ftp şifremize ulaştık. Şimdi kullanıcı adı ve şifreyi kullanarak giriş yapalım.

komut : ftp 10.10.24.199

Ftp kullanıcısı olarak giriş yaptıktan sonra Eli’sCreds adında bir metin dosyamız var. Bu metin dosyasını get komutu ile indiriyorum.

komut : get Eli’s_Creds.txt

Eli’s_Creads.txt metin dosyasını açtığımda anlamsız şekiller ile karşılaştım. https://www.dcode.fr/en web sitesinde Search a tool on dCode by keyword kısmına metinde yazan anlamsız şekilleri yazdığım zaman bana encode yolunu gösterdi. Metin dosyasının içerisindeki anlamsız şekiller Brainfuck ile şifrelenmişti.

Metin dosyasını encode ettiğimde bir kullanıcı adına ve şifreye ulaşmış oldum.

Kullanıcı adının ve şifrenin ssh bağlantısı için kullanıcalağını düşünerek hemen deniyorum.

komut : ssh eli@10.10.24.199 ve ardından şifreyi giriyorum

Ssh ile giriş yaptıktan sonra eli kullanıcısına gönderilmiş önemli bir mesaj karşımıza çıkıyor. s3cr3t adında bir dosyayı kontrol etmemiz isteniyor. Bu dosyayı her dizini tek tek kontrol edilerek bulunabilir ama bu oldukça fazla zaman alacaktır. Burada locate komutu işlerimizi hızlandıracaktır.

komut : locate s3cr3t

Locate s3cr3t komutunu çalıştırdığımızda 3 adet dosya ile karşılaşıyorum. Sırayla cat komutu okumaya çalışıyorum. Gwendoline adında bir kullanıcının şifresine ulaşıyorum.

Bingo ilk gizlenmiş kullanıcı bayrağına ulaşıyoruz. Sırada root bayrağı var.

Root bayrağı için kullanıcan root olmamız gerekiyor. İlk olarak sudo -l komutunu çalıştırarak gwendoline kullanıcısın root komutları olup olmadığına bakıyoruz.

komut : sudo -l

Vi editöründen ilerliyebileceğimizi düşünüyorum. İlk olarak vi üzerinde root olmayı deniyorum. Bunun için gtfobins sitesinde “vi” açığı arıyorum. Karşıma tek bir komut ile root olunabileceği çıkıyor. Hemen deniyorum ama gwendoline kullanıcısının yetkileri kısıtlanmış. Farklı bir yol bulmam gerekiyor. Belki sudo’nun versiyonu üzerinden ber zafiyet bulabilirim diye düşünerek versiyonuna bakıyorum.

komut : sudo -V

Sudo versiyonunda zafiyet aradım. Ve sudo versiyonların 1.8.28 versiyonu öncesindeki tüm versiyonlarında olan
bir zafiyet buldum.

Zafiyet ile ilgili detaylı bilgiye link üzerinden ulaşabilirsin.
https://www.mend.io/blog/new-vulnerability-in-sudo-cve-2019-14287/

komut : sudo -u#-1 /usr/bin/vi /home/gwendoline/user.txt

Ve sonunda user.txt vi editörü üzerinde açmayı başardık. Sırada sadece tek bir adım kaldı. Vi editörü içerisinde :shell komutunu yazıyorum. Ve bingo artık root olduk.
komut : :shell

About The Author

Reply