[SIZE="4[CENTER]Merhaba Değerli TürkHackteam ailesi.Bu konuda sizlere vulnhub sitesinde bulunan "PwnLab"isimli ctf'i
nasıl çözdüğümü anlatıcam.Evet hazırsanız başlayalım.
Link : [url]https://www.vulnhub.com/entry/pwnlab-init,158/[/url]
İlk olarak bu verdiğim linkten ctf dosyamızı indiriyoruz.Daha sonra sanal makinemiz olan virtualbox'a kurulum yapıyoruz.
[IMG]https://i.imgyukle.com/2019/07/14/kWSEbh.png[/IMG]
Daha sonra sanal makinemin ayarınıda linux gibi NatNetwork yapıyoruz.Bunu ne için yaptığımızı soracak olursak
bu makineyi bazen pinglememiz gerekiyor.Biraz kafanız karışmış olabilir.Merak etmeyin ileride öğreneceksiniz
Makineyi açtığımda böyle bir ekran karışılıyor beni :
[IMG]https://i.imgyukle.com/2019/07/14/kWSVrn.png[/IMG]
Bende bir kullanıcı adı soruyordu.Hemen Forumda bulunan admin-password listesindeki kullanıcı adlarını denemeye başladım.
Bu yaptığım aslında manuel olarak bir deneme-yanılma yoluydu.Sonunda kullanıcı adını bulmuştum : "root" kullanıcı adıydı.
Fakat bir sorun daha vardı.Bu seferde şifre istiyordu.
[IMG]https://i.imgyukle.com/2019/07/14/kWSJ8j.png[/IMG]
Aklıma çok kötü bir fikir geldi kali linux'un başlangıçtaki şifresi olan "toor" u denedim
Anladımki şifre bu değilmiş.Neyse benim şifreyi bulmam gerekiyordu.Hemen Parrot'a geçtim.
İlk yapacağım işlem kendi ip adresime bakmak olacaktı.Bunuda "ifconfig" komutunu kullanarak buldum.
İp adresimi bulmamım sebebi birazdan ağdaki bütün cihazları tarayacağım.Ve orda kendi ip adresimi tanımam gerekiyor.
[IMG]https://i.imgyukle.com/2019/07/14/kWSrEo.png[/IMG]
İp adresime bulduğuma göre sırada açıklı olan makinemizin local ipsini bulmaktı.
Onuda netdiscover aracı ile kolayca elde ettim.Yazdığım komut : "netdiscover -r 10.0.2.0/24"
[IMG]https://i.imgyukle.com/2019/07/14/kWSyLU.png[/IMG]
Şimdi burda hangisi bizim açıklı makinemiz diye soracaksınız.Burda sonu 1,2,3 olan
ip adresleri bizim NatNetwork'umuzun default olarak koymuş olduğu ip adresleridir.
Burda sonuç olarak bize kalan ip adresi "10.0.2.6" bu olduğuna göre açıllı makinemizin ip adresini bulduk.
Şimdi burda napıcağımız konusuna gelirsek bu bulduğumuz ip adresini nmap ile bir taratalım bakalım hangi portları açık.
Nmap ile tarattığımda bazı sonuçlar elde ettim buyrun bakınız :
[IMG]https://i.imgyukle.com/2019/07/14/kWSCqH.png[/IMG]
Burda açık olan 4 tane port var gördüğünüz üzere şimdi bu portlara baktığımızda 80 portunun açık olduğunu görüyorum.
80 portu ise bize https protokolünü barındırıyor.O zaman hemen mozillayı bir açıp bakalım.
[IMG]https://i.imgyukle.com/2019/07/14/kWSS0A.png[/IMG]
Upload butonuna tıkladğımda ilk önce giriş yapmamı istiyor.Maalesef sitede kayıt olma diye birşeyde yok
Kullanıcı adı ve şifre biryerlede gizleniyor olması lazım.Burda sitenin kaynak kodlarını incelemeye başladım.
Ama maalesef buda hüsran Bunu yerine aslında tool kullanmam gerekiyor aslında.
Aklıma sitedeki bütün linkleri bulan bir tool gelmişti.Ve toolumuzu açtım ismi ise "dirb" idi.Ve taratmaya başladım.
[IMG]https://i.imgyukle.com/2019/07/14/kWSx51.png[/IMG]
Evet sonunda birşeyler elde edebilmiştim.Tek tek bulunan sayfaları mozillada arattım ama nafile.
Gözden kaçırdığım bir sayfa vardı.İmages sayfası bakalım birşeyler bulabilecek miyiz ?
Evet bir dosya var burada Bakalım bu neymiş ?
[IMG]https://i.imgyukle.com/2019/07/14/kWSIbf.png[/IMG]
Gene hüsran gene hüsran Neyse moralimizi bozmayalım.Sitede açık varmı kontrol edelim.Aklıma gelen "sqlmap" tooludu idi.
SQL İnjection yapmayı denedim.Fakat olmadı.Birden aklıma bir soru takıldı.Ben niye ilk önce siteyi taramadan sql injection yapıyordum ?
Taramak için ise Owasp Zap kullandım.Fakat bulduğum sonuçlar gene iyi değildi yani hiçbir şey bulamamıştım.
[IMG]https://i.imgyukle.com/2019/07/14/kWSYrG.png[/IMG]
Diğer tarama araçlarına da bakarken niktoda şöyle bir değere ulaştım.
"/config.php"Burda bana database id ve passwordlarına ulaşabileceğimi söylüyordu bu tool.Birde şunu bulmuştum:
"/login.php"Burda ise admin paneline giriş sayfası olması lazım diye düşünüyordum.
Bunları bir kenarıya not ettim belki işime yarar diye.DVWA çözerken bütün açıkları çözmüştüm nerdeyse tabi biri hariç
Buda File İnclusion açığı idi.Bütün herşeyi denemiştim fakat korktuğum için daha doğrusu düzgün öğrenemediğim için bunu test etmeye korkmuştum.
Ve burda bununla birlikte bu işi bitirmek istiyordum.
Biraz araştırmalarımın sonucunda öğrenmiştim bazı kod açıklıklarından dolayı sayfanın sonuna "/../../etc/passwd" gibi ifadeler yazarak şifre dosyasına ulaşmaya çalışıyorduk.
Ve bir github sayfasında bu kod açıklıklarını nasıl istismar edeceğim yazıyordu.Buyrun github sayfası : [URL="https://tik.lat/Oe52L"] https://github.com/cyberheartmi9/PayloadsAllTheThings/tree/master/File%20Inclusion%20-%20Path%20Traversal[/URL]
Sayfada gözüme çarpan bir kod vardı
Bu kodun gözüme çarpmasının sebebi ise "index.php" adlı bir sayfanın olmasıydı.
Şimdilik bu kadar devamını hala yayınlamaya çalışacağım...[/CENTER][/SIZE]
nasıl çözdüğümü anlatıcam.Evet hazırsanız başlayalım.
Link : [url]https://www.vulnhub.com/entry/pwnlab-init,158/[/url]
İlk olarak bu verdiğim linkten ctf dosyamızı indiriyoruz.Daha sonra sanal makinemiz olan virtualbox'a kurulum yapıyoruz.
[IMG]https://i.imgyukle.com/2019/07/14/kWSEbh.png[/IMG]
Daha sonra sanal makinemin ayarınıda linux gibi NatNetwork yapıyoruz.Bunu ne için yaptığımızı soracak olursak
bu makineyi bazen pinglememiz gerekiyor.Biraz kafanız karışmış olabilir.Merak etmeyin ileride öğreneceksiniz
Makineyi açtığımda böyle bir ekran karışılıyor beni :
[IMG]https://i.imgyukle.com/2019/07/14/kWSVrn.png[/IMG]
Bende bir kullanıcı adı soruyordu.Hemen Forumda bulunan admin-password listesindeki kullanıcı adlarını denemeye başladım.
Bu yaptığım aslında manuel olarak bir deneme-yanılma yoluydu.Sonunda kullanıcı adını bulmuştum : "root" kullanıcı adıydı.
Fakat bir sorun daha vardı.Bu seferde şifre istiyordu.
[IMG]https://i.imgyukle.com/2019/07/14/kWSJ8j.png[/IMG]
Aklıma çok kötü bir fikir geldi kali linux'un başlangıçtaki şifresi olan "toor" u denedim
Anladımki şifre bu değilmiş.Neyse benim şifreyi bulmam gerekiyordu.Hemen Parrot'a geçtim.
İlk yapacağım işlem kendi ip adresime bakmak olacaktı.Bunuda "ifconfig" komutunu kullanarak buldum.
İp adresimi bulmamım sebebi birazdan ağdaki bütün cihazları tarayacağım.Ve orda kendi ip adresimi tanımam gerekiyor.
[IMG]https://i.imgyukle.com/2019/07/14/kWSrEo.png[/IMG]
İp adresime bulduğuma göre sırada açıklı olan makinemizin local ipsini bulmaktı.
Onuda netdiscover aracı ile kolayca elde ettim.Yazdığım komut : "netdiscover -r 10.0.2.0/24"
[IMG]https://i.imgyukle.com/2019/07/14/kWSyLU.png[/IMG]
Şimdi burda hangisi bizim açıklı makinemiz diye soracaksınız.Burda sonu 1,2,3 olan
ip adresleri bizim NatNetwork'umuzun default olarak koymuş olduğu ip adresleridir.
Burda sonuç olarak bize kalan ip adresi "10.0.2.6" bu olduğuna göre açıllı makinemizin ip adresini bulduk.
Şimdi burda napıcağımız konusuna gelirsek bu bulduğumuz ip adresini nmap ile bir taratalım bakalım hangi portları açık.
Nmap ile tarattığımda bazı sonuçlar elde ettim buyrun bakınız :
[IMG]https://i.imgyukle.com/2019/07/14/kWSCqH.png[/IMG]
Burda açık olan 4 tane port var gördüğünüz üzere şimdi bu portlara baktığımızda 80 portunun açık olduğunu görüyorum.
80 portu ise bize https protokolünü barındırıyor.O zaman hemen mozillayı bir açıp bakalım.
[IMG]https://i.imgyukle.com/2019/07/14/kWSS0A.png[/IMG]
Upload butonuna tıkladğımda ilk önce giriş yapmamı istiyor.Maalesef sitede kayıt olma diye birşeyde yok
Kullanıcı adı ve şifre biryerlede gizleniyor olması lazım.Burda sitenin kaynak kodlarını incelemeye başladım.
Ama maalesef buda hüsran Bunu yerine aslında tool kullanmam gerekiyor aslında.
Aklıma sitedeki bütün linkleri bulan bir tool gelmişti.Ve toolumuzu açtım ismi ise "dirb" idi.Ve taratmaya başladım.
[IMG]https://i.imgyukle.com/2019/07/14/kWSx51.png[/IMG]
Evet sonunda birşeyler elde edebilmiştim.Tek tek bulunan sayfaları mozillada arattım ama nafile.
Gözden kaçırdığım bir sayfa vardı.İmages sayfası bakalım birşeyler bulabilecek miyiz ?
Evet bir dosya var burada Bakalım bu neymiş ?
[IMG]https://i.imgyukle.com/2019/07/14/kWSIbf.png[/IMG]
Gene hüsran gene hüsran Neyse moralimizi bozmayalım.Sitede açık varmı kontrol edelim.Aklıma gelen "sqlmap" tooludu idi.
SQL İnjection yapmayı denedim.Fakat olmadı.Birden aklıma bir soru takıldı.Ben niye ilk önce siteyi taramadan sql injection yapıyordum ?
Taramak için ise Owasp Zap kullandım.Fakat bulduğum sonuçlar gene iyi değildi yani hiçbir şey bulamamıştım.
[IMG]https://i.imgyukle.com/2019/07/14/kWSYrG.png[/IMG]
Diğer tarama araçlarına da bakarken niktoda şöyle bir değere ulaştım.
"/config.php"Burda bana database id ve passwordlarına ulaşabileceğimi söylüyordu bu tool.Birde şunu bulmuştum:
"/login.php"Burda ise admin paneline giriş sayfası olması lazım diye düşünüyordum.
Bunları bir kenarıya not ettim belki işime yarar diye.DVWA çözerken bütün açıkları çözmüştüm nerdeyse tabi biri hariç
Buda File İnclusion açığı idi.Bütün herşeyi denemiştim fakat korktuğum için daha doğrusu düzgün öğrenemediğim için bunu test etmeye korkmuştum.
Ve burda bununla birlikte bu işi bitirmek istiyordum.
Biraz araştırmalarımın sonucunda öğrenmiştim bazı kod açıklıklarından dolayı sayfanın sonuna "/../../etc/passwd" gibi ifadeler yazarak şifre dosyasına ulaşmaya çalışıyorduk.
Ve bir github sayfasında bu kod açıklıklarını nasıl istismar edeceğim yazıyordu.Buyrun github sayfası : [URL="https://tik.lat/Oe52L"] https://github.com/cyberheartmi9/PayloadsAllTheThings/tree/master/File%20Inclusion%20-%20Path%20Traversal[/URL]
Sayfada gözüme çarpan bir kod vardı
Kod:
http://example.com/index.php?page=pHp://FilTer/convert.base64-encode/resource=index.php
Şimdilik bu kadar devamını hala yayınlamaya çalışacağım...[/CENTER][/SIZE]