Eğitim Danışmanlık

CTF: VulnHub- Cute Makine Çözümü

4 Kasım 20223 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ı makineye saldırarak 2 adet bayrağı ele geçirmek.

Makinenin VulnHub sayfasındaki linki: https://www.vulnhub.com/entry/bbs-cute-102,567/

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.22 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.22 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.22

22 SSH, 80 HTTP, 110 pop3, 995 ssl/pop3 portları açık.

4. Tarayıcıma 10.0.2.22 yazıyorum ve makinenin web sitesine gidiyorum. Sitede ve kaynak kodunda bir şey yok. O zaman bir de alt dizin taraması yapalım.

5. Alt dizinleri bulmak için gobuster kullanı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.
gobuster dir -u 10.0.2.22 -w /usr/share/wordlists/MyLists/DirectoryListMedium.txt kodumu yazarak alt dizinleri tespit ettim.

6. Buradan index.php alt dizinine gidiyorum.

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.
index.php dizinine gidince bir giriş ekranıyla karşılaşıyorum. Bir de alt dizinlerde bulduğum captcha.php sayfasını açıyorum ve register diyerek sisteme kayıt oluyorum.

7. Kayıt olma işlemimi tamamlı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.
Buradaki Captcha değerini captcha.php sayfasından alıyorum. Sisteme kayıt olmayı başarıyoruz.

8. Şimdi sistemi biraz kurcalayalı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.
Personal options kısmına tıklayınca bir yükleme alanı görüyorum. Aklıma hemen buraya php reverse shell kodu yükleyip shell almak geliyor.

9. O zaman php reverse shell kodumu düzenleyerek buraya yükleyeyim.

En üste GIF98; yazıyorum, ip alanına 10.0.2.6 (kendi kali makinemin ip adresi) ve port olarak da 1234 yazıyorum.

O zaman dosyamız yüklemeye hazır.

10. Natcat dinlememi başlatıyorum ve siteye dosyayı yüklüyorum.

Natcat dinlemem için nc -lvnp 1234 kodunu yazıyorum.

11.

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.
Resmi yüklediğim zaman avatar kısmımda görünüyor. Bu avatara sağ tıklayıp copy image link diyorum ve yeni bir sekme açıp oraya yapıştırıyorum (10.0.2.22/uploads/avatar_aa_php-reverse-shell.php)

12. Artık natcat dinlemem başarılı oldu ve shell aldım. Hemen ilk olarak kararlı interaktif shell için python kodumu yazı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.
python3 -c "import pty;pty.spawn('/bin/bash')" kodumu yazınca artık kararlı interaktif shell almış oldum.

13. İlk bayrağım için home dizinine gidiyorum.

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.
Home dizininde fox kullanıcısının içine gidiyorum ve user.txt' yi cat ile okuyarak ilk bayrağıma ulaşıyorum
İlk bayrağım: dcb8189a0eaf7a690a67785a7299be60

14. Şimdi de izinlerimi listelemek için sudo -l komutunu kullanı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.
usr/sbin in altında hping3 varmış root muş ve şifresi yokmuş

15. O zaman root olarak yetkimizi yükseltmek için /usr/sbin e gidiyorum

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.
/usr/sbin de direk hping3 yazdım ve root oldum.

16. Şimdi son bayrağımı almak için root dizinine gidiyorum

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.
Root bayrağımı da almış oldum.
Root bayrağım: 0b18032c2d06d9e738ede9bc24795ff2

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