Follow Us

recent/hot-posts

 Local file inclusion (Lfi) zaafiyetini burp suite ile sizlerle beraber uygulamalı şekilde göreceğiz. Local file inclusion zaafiyetinden önc...

Burp Suite Local File İnclusion Zaafiyeti Uyuglama !

 Local file inclusion (Lfi) zaafiyetini burp suite ile sizlerle beraber uygulamalı şekilde göreceğiz. Local file inclusion zaafiyetinden önce bi bahsedelim sonrasında pratik yaparak kafanıza oturmasını sağlayalım.

local file include zaafiyeti


Lfi Nedir - Nasıl Oluşur ?

Sayfada dahil edilen bir dosyanın ya da bir yere yönlendirilen bir dosyanın gerekli filtrelemeler yapılmadan kullanıcı tarafından yetkisiz dosyalara erişim sağlamasıdır.

Örnek verecek olursak :

https://hedefsite.com/sayfa=login.php

Yukarda vermiş olduğum örnek bir site. Bu sitede sayfa değişkenine login sayfasını çağırmakta. Yani bir girdi parametresi almakta. Fakat biz login.php yerine bunu değiştirerek iznimiz olamayan dosyalara erişim sağlayabiliriz.

Örnek :

https://hedefsite.com/sayfa=../../../../etc/passwd

lfi payload



Linux işletim sisteminde çalışacak olan bu kod kullanıcı hesaplarını bize gösterecektir. Vermiş olduğumuz bu parametre "../" bir üst dizine çıkacağımız anlamına gelir.

Eğer kafanız biraz karıştıysa uygulama yaparken daha anlaşılır olucaktır merak etmeyin.

burp suite lfi zaafiyeti


Burp Suite İle Lfi Zaafiyeti Nasıl Tespit Edilir?

İşlemlere başlamadan önce burp aracımızı hemen açalım. Ardından sizlere uygulama yapmanız için bir site vereceğim. Bu sitede bilerek açık bırakılmış ve insanların denemesi için yapılmış. Portswigger tarafından yapılmış. Burp suite geliştiricileri yani Portswigger denememiz amaçlı bilerek bırakmış bir sayfa.


Siteye gitmek için tıkla.

Siteye gittikten sonra Acces the lab butonuna basın. Tabi üye değilseniz kullanımınıza izin vermeyecektir. Bu yüzden üye olun ve tekrar linke tıklayıp kabul et butonuna basın. Ardından sizi uygulama yapacağımız siteye aktarıcak.

Örnek bir lfi zaafiyeti :

lfi açığı uygulama



Portswigger size detaylı bir şekilde anlatmakta. İngilizce olarak anlatılmış olsa da türkce diline çevirerek okumanızda fayda var.

burp suite lfi zaafiyeti uygulama

Evet bizi siteye aktardı. Bu site üzerinden işlem gerçekleştireceğiz. Öncelikle siteyi inceleyelim. Tüm ürünlere girip bakalım. Herhangi bir dosya çağırma işlemi olup olmadığına bakalım.

Evet tek tek baktık fakat herhangi birşey bulamadık. Bu yüzden resme sağ tıklayıp yeni pencedere aç diyorum. Url üzerinden kontrol ediyorum ve resmi çağırırken girdi olarak çekmiş. Burda zaafiyet olabilir mi ? diyerek dene işlemine koyuluyorum.

Local File İnclusion zaafiyeti nedir

Görmüş olduğumuz gibi " image?filename= " ile resmi çekemiş hemen url kopyalıyorum fakat filename= sonrasını almıyorum. Yani resim çektiğimiz yeri almıyorum. Çünkü oraya payload denemeleri yapacağız. Bu yüzden  " filename= 'e " kadar olan bölümü alıyorum. 

Veirler post olarak gönderildiği için ana sayfaya geliyorum. Burp suite ile dinlemeye alıyorum. İlk istekte herhangi birşey bulamadık. Fakat sonraki istekte az önce incelediğimiz resmi çekmekte.

Lfi açığı nasıl tespit edilir

Burda bizim resim dosyamızı çekiyor. Bu isteği sağ tıklayarak send to repeater butonuna basıyoruz. Bildiğiniz gibi repeater türkcede tekrarlayıcı anlamına gelmekte. Bir istek üzerinde durmadan değişiklik yaparak gönderilen isteği incelemek için kullandığımız bölümdü. Bu konu hakkında makale yazmıştık. Ona da buraya tıklayarak hemen ulaşabilirsiniz.

Daha sonra repeater bölümümüze gidiyoruz. Çekmiş olduğumuz resmi yani 70.jpg adlı resmi silip payload giriyoruz.

burp suite lfi zaafiyeti uygulama


Send diyerek isteği gönderiyoru. Bize dönen durum kodu 400 olarak geldi. Bad request yani kötü istek olarak tanımlandı.

local file inclusion zaafiyeti


Sadece resim uzantılarını mı kabul ediyor diye payloadımızın sonuna .jpg uzantısını ekliyorum ve tekrar isteği gönderiyorum. Fakat görmüş olduğumuz gibi ona da kötü istek dedi. Kötü istek demesi çok güzel. Çünkü orda bir filtreleme yapılmadığını farkettik. Bu yüzden payloadımız kendini ele veriyor diye düşünerek payloadımızı encode ederek gönderiyoruz.

lfi passwd dosyasını okuma


Evet görmüş olduğunuz gibi dönen cevapta 200 durum kodu geldi. Bu da demek oluyor ki istek başarıyla gönderildi. Dönen cevap üzerinde passwd dosyasını okumuş olduğumuzu görüyoruz. Çünkü dönen cevapta passwd dosyasının içindeki bilgiler var. 

Birçok payload bulunmakta. Her bir payload farklı bir anlama gelmektedir. Bu yüzden sadece 1 payload deneyerek sistemden çıkmayın. Bu sql login bypass için de geçerli bir kural. Eğer burp suite ile sql login bypass konumuzu okumdaıysan hemen tıklayarak okuyabilirsin.

0 Comments: