Typhoon v1.02 Writeup

Sıradaki içerik:

Typhoon v1.02 Writeup

Typhoon v1.02 Writeup

251 okunma — 22 Temmuz 2023 13:55
avatar

Deniz Bektaş

  • e

    Eğlenmiş

  • e

    Eğlenmiş

  • e

    Şaşırmış

  • e

    Kızgın

  • e

    Üzgün

Bugün PRISMA CSI ekibi tarafından hazırlanan Typhoon v1.02 makinesinin çözümünü yapacağız. Makine oldukça kolay bir makine, yeni başlayanlar için oldukça yararlı olduğunu düşünüyorum. Ben çözerken oldukça eğlendim. Özellikle birden fazla zafiyet bırakılması aynı makine üzerinde birçok servisi tecrübe edebilmemize olanak sağlıyor.

İlgili makineyi indirmek için tıklayın

Bilgi Toplama

Öncelikle makinemizin ip adresini ve üzerinde çalışan servis ve uygulamaları bulmakla işe başlıyoruz. “ip -a” komutu ile kali makineme 192.168.64.3 ip adresinin verildiğini görüyorum. Dolayısıyla zafiyetli makinemiz de bizimle aynı subnettte olmalı. Dolayısıyla 192.168.64.0/24 ip aralığına nmap taraması gerçekleştiriyorum.

nmap ile makine ip adresi tespiti

Böylece makinemizin ip adresinin 192.168.64.8 olduğunu öğrenmiş olduk. Ayrıca makinenin hostname kısmını da bulmuş olduk. Şimdi makinenin ip adresini bildiğimize göre servis taraması gerçekleştirebiliriz.

makine üzerindeki servislerin taranması

Her yiğidin bir yoğurt yiyişi vardır derler. Gözümüze bir sürü zafiyetli servis çarpsa da geleneği bozmuyorum ve ilk başta 80 portuyla işe başlıyorum. Tarayıcıdan 192.168.64.8 adresine gittiğimde statik bir html sayfası beni karşıladı. Burada çok yol kat edemeyeceğimi anladım ve /robots.txt dosyasını okumaya çalıştım. Ve bingo ilk olası zafiyetimizi bulduk.

User-agent: *
Disallow: /mongoadmin/

Tabi web zafiyetlerinin bununla sınırlı kalmayacağını bildiğimden dirbuster ile ufak bir dizin taraması işlemi gerçekleştirmeye karar verdim. Aşağıda dirbuster işlemi sonucunda aldığım çıktıyı görüyorsunuz. 

dirbuster ile 80 portundaki dizinlerin taranması

Zafiyet Tespiti & Sömürüsü

Bilgi toplama aşamasının tamamlanmasının artından zafiyet toplama aşamasıyla yolculuğumuza devam ediyoruz.

Lotus CMS 3.0 RCE Exploit

Dirbuster ile öğrenmiş olduğumuz /cms klasörünü ziyaret ettiğimizde karşımıza bir içerik yönetim sistemi çıkmakta. Footer kısmındaki “Powered by LotusCMS” yazısı dikkatimi çekti. Metasploit Framework üzerinden bu CMS için bir exploit olup olmadığını sorguladığımda karşıma Lotus CMS 3.0 üzerinde bulunan RCE (Remote Code Execution) güvenlik açığı çıkmış oldu. 

use exploit/multi/http/lcms_php_exec

Exploitin parametrelerini verip payload olarak php/meterpreter/reverse_tcp seçmemin ardından www-data olarak msf Shell almış oldum.

typhoon LotusCMS metasploit

WebCalendar 1.2.4 RCE Exploit

Dirbuster üzerinden bulmuş olduğumuz ikinci klasör olan /calendar ile devam ediyoruz. Tarayıcıda bu URL’i ziyaret etmek istediğimde beni calendar.typhoon.local domainine yönlendirdiğini ve bu domainin hiçbir DNS kaydı olmadığı için 404’e düştüğümü gördüm. İlk olarak /etc/hosts dosyamıza bu domaini ekleyerek işe başlıyoruz.

192.168.64.8 calendar.typhoon.local

Sayfayı yenilediğimde footer kısmında webcalendar 1.2.4 yazısı dikkatimi çekiyor. Yine metasploit üzerinden yapmış olduğum arama sonucunda WebCalendar 1.2.4 Pre-Auth RCE exploit bulunduğunu öğreniyorum.

use exploits/Linux/http/webcalendar_settings_exec

Exploitin gerekli parametrelerini verdiğimde beni yine bir msf Shell karşılıyor.

tyhpoon WebCalendar Metasploit Exploit

Drupalgeddon 2 Forms Api Property Injection

Şimdi ise /drupal klasörümüze bakıyoruz. Versiyon bilgisi göremediğimden sayfa kaynağını görüntüle dedim. HTML head kısmında meta generator olarak Drupal 8 verilmişti. Drupal 8 üzerinde var olan zafiyetleri araştırdığımda ilgili zafiyet ile karşılaştım.

use /etploit/Unix/webapp/drupal_drupalgeddon2

Exploitin ilgili parametrelerini verip çalıştırdığımda ise meterpreter ile karşılaşıyorum.

typhoon Drupal Metasploit Exploit

Diğer Klasörler

Buraya kadar olan yöntemlerden herhangi biri ile elde ettiğim bir Shell üzerinden web root folder olan /var/www/html klasörüne ls komutunu gönderdiğimde içeride /dvwa ve /xvwa isimli iki adet klasör daha olduğunu gördüm. Bu klasörlerde zafiyetli web uygulamaları laboratuvarları var. İsterseniz buralardaki zafiyetleri de ayrıyeten çözebilirsiniz. Ancak ben bu konuya burada değinmeyeceğim.

PHPMyAdmin

/xvwa klasörünü ziyaret edip içerisinde bulunan config.php dosyasını okuduğumda veritabanı bilgileri döndü. Kullanıcı adı: root, Parola: toor. Kısaca her web uygulaması için ayrı mysql kullanıcıları oluşturmak yerine root kullanıcısı ile bağlantı gerçekleştirilmiş.

Bu bilgiler ile /phpmyadmin klasöründe oturum açtıktan sonra mysql root yetkisine sahip olduğumu görüyorum.

typhoon PHPMyAdmin login olunan görsel

MongoAdmin Creds

Hatırlarsanız en başta /mongoadmin adında bir klasörümüz daha vardı. Bunu ziyaret ettiğimde komik bir şekilde hiçbir parola sormadan mondodbadmin yetkisiyle karşı karşıya kalıyorum. Creds tablosunu görüntülediğimde ise karşıma kullanıcı adı ve parola çıkıyor. Kullanıcı Adı: typhoon, Parola: 789456123. 

Bu bilgiler neyin parolası olabilir diye düşünürken ssh bağlantısı sağlama fikri aklıma geliyor. Ve bingo ssh [email protected] olarak başarıyla oturum açıyorum.

Böylece web üzerinden elde edebileceğimiz bütün zafiyetlere değinmiş oldum. Şimdi sırada servislerdeki zafiyetler var.

Apache Tomcat

use auxiliary/scanner/http/tomcat_mgr_login kullanarak tomcat parolasını bulmaya çalıştım. Bu işlem sonucunda tomcat:tomcat şeklinde giriş bilgilerini buldum.

Daha sonrasında 192.168.64.8:8080/manager adresinden kullanıcı adı ve parolayı girerek tomcat admin olarak sisteme giriş yaptım. Bu aşamadan sonra isterseniz msfvenom ile backdor oluşturularak sistemde user Shell elde edebilirsiniz.

PostgreSQL DB 9.3.3 – 9.3.5 Dosya Okuma

İçeride çalışan PostgreSQL sunucusunun ilgili sürümlerinde dosya okuma açığı bulunmaktadır. Metasploit üzerinden auxiliary/admin/postgres/postgres_readfile kullanılarak istenilen dosyayı okuyabilirsiniz. Okumak istediğiniz dosyayı “set RFILE” ile belirlemeniz yeterli.

typhoon postgresql dosya okuma metasploit Exploit

Yetki Yükseltme

 Elde ettiğimiz typhoon kullanıcısı ile SSH bağlantısı gerçekleştiriyorum. Uname ile kernel sürümünü kontrol ettiğimde 3.13.0-32-generic olduğunu görüyorum. CVE-2015-1328 numarasına sahip bir exploit olduğunu görüyorum. 

https://www.exploit-db.com/exploits/37292

İlgili exploiti yukarıdaki bağlantıdan indirip gcc ile derledikten sonra başarılı bir şekilde makinede root oluyorum.

typhoon yetki yükseltme

Böylece makinemizi bitirmiş olduk. Birden fazla zafiyet olduğundan, makine üzerindeki tüm zafiyetlerin keşfi ve sömürüsü yaklaşık 3-4 saat zamanımı aldı. Makine çözümüne yeni başlıyorsanız oldukça faydalı olacağını söyleyebilirim. Sorularınız için yorumlar bölümünü kullanabilir, [email protected] mail adresimden bana ulaşabilirsiniz.

Daha fazla writeup yazısına erişmek için tıklayın

  • Site İçi Yorumlar

En az 10 karakter gerekli

Gönderdiğiniz yorum moderasyon ekibi tarafından incelendikten sonra yayınlanacaktır.