Merhaba arkadaşlar. Bu gün THM'deki başlangıç seviye bir makinenin çözümünü göstereceğim.
Bu CTF LFI açığı üzerinden makineye sızmayı konu alıyor daha iyi anlayabilmek için forumdaki LFI konularına bakabilirsiniz.
İlk olarak Nmap taraması yaparak başlıyoruz.
nmap -sS -sV MakineIP
80 ve 20 portlarının açık olduğunu görüyoruz demekki makinenin kendine ait bir websitesi var bu siteye http://MakineIP yazarak giriyoruz.
Sayfada gördüğümüz butonlara tıklıyoruz ve bize bir zafiyet olduğunu gösteriyor.
View details butonuna tıklandığında
http://10.10.62.4/article?name=hacking
sayfasına yönlendiriyor. Php tabanlı web sayfalarından adres çubuğundan arama yapılıyorsa bu LFI açığı olduğunu gösterir.
Örnek Dizinler:
/etc/passwd
/etc/shadow
/etc/hosts
SSH ile sisteme girebilmemiz için makinenin kullanıcı adı ve şifresini öğrenmemiz lazım.
Bunun için adres çubuğuna
http://MakineIP/article?name=/etc/passwd
aratılır.Arattığımız zaman site bize error verdi demekki bu dizinde değilmiş
Passwd dizinini bulabilmemiz için önünde kaç dosya olduğunu tahmin etmemiz gerekiyor bunun için
../
yazarak bir önceki dosyaya atlamış oluyoruz istediğimiz dosyaya ulaşana kadar bunu deniyoruz.Sonunda
http:MakineIP/articles?name=../../../etc/passwd
sayfasına girdik, /etc/passwd
dosyasını görüntülemeyi başardık id ve şifreyi bulduk.Şimdi SSH bağlantısını kullanarak sisteme gireceğiz bunun için terminale
ssh falconfeast@MakineIP
yazıyoruz ve parolamızı girerek giriş yapıyoruz.Bu adımla beraber sisteme giriş yapmış olduk artık CTF in bizden istediği
user.txt
ve root.txt
dosyalarına ulaşmaya çalışacağız.Makinenin içerisindeki dosyaları görüntülemek için terminale
ls -la
yazıyoruz ve user.txt dosyasını gösterdiUser.txt dosyasına girmek için terminale
cat user.txt
yazıyoruz ver makinenin bizden istediği 1. hedefe ulaşmış olduk.Şimdi root.txt dosyasına ulaşabilmek için makinede yetki yükseltmemiz yani root olmamız lazım yetkimizi yükseltmek için terminale
sudo-l
komutu yazıyoruz bize /usr/bin/socat adlı dosyaya erişebileceğimizi söylüyor.Bu dosyaya erişebilmek için shell kullanmamız gerekiyor bunun için Gtfobins sitesine gidiyoruz ve
socat
aratıyoruz.Sitede yazan shell komutunu
sudo socat stdin exec:/bin/sh
terminalimize yazıyoruz ve root olduk, artık /usr/bin/socat dosyasına erişebiliriz.Dosyanın içeriğine bakmak için ls komutunu çalıştırıyoruz ve root dizini karşımıza çıktı dizine girmek için
cd/root
yazıyoruz.Son olarak terminale
cat root.txt
yazıyoruz ve 2. hedefimizede ulaşmış oluyoruz.Okuduğunuz için teşekkürler umarım yardımcı olmuştur.