PenetrasyonTesti
March 21, 2020

Local File Inclusion Nedir ?

File Inclusion, yani dosya dahil etme saldırısı saldırganın hedef web sitesine bir dosya dahil etmesine ya da hedef web sitesinin kendinde olan ama sunmadığı bir dosyayı görüntüleyebilmesine denir.

LFI (Local File Inclusion) Nedir ?

Yerelden dosya ekleyerek kod çalıştırmaktır.

Lfi açığı Php’de bulunan bir açıktır. Bu açığın sebebi de değişkenlerin atama hatalarıdır. Acemi Php coderlar maalesef bu tip hatalara düşmektedir. Fakat günümüzde neredeyse kalmayacak duruma gelen bu açık hala sıfırdan kodlanan Php sistemlerde bulunabiliyor.

Nasıl Sömürebiliriz ?

Senaryo 1

Adresimizin aşağıdaki olduğunu varsayalım

  • Geliştirici yeterli filtreleme uygulayamazsa, contact.php dosyasını parolaların bir Unix sisteminde depolandığı passwd dosyası gibi hassas bir dosyanın yoluyla değiştirerek, saldırganın dosyayı görmesini sağlayan yerel dosya içerme güvenlik açığından yararlanabilir.
  • Böyle bir senaryoda, kötü niyetli bilgisayar korsanı web sunucusunda başka bir yerden kod enjekte edebilir ve ayrıştırıcının LFI güvenlik açığından yararlanma talimatları olarak yorumlamasına izin verebilir.
  • Bunu yapmanın iyi bir yolu, kaynağında kötü amaçlı kod içeren bir görüntünün bulunduğu resim yükleme işlevidir. Örneğin ;

Senaryo 2 : Sayfaya Yazdırılan Dosyaları Dahil Etme

  • Bazen bir dosyanın çıktısının farklı web sayfalarında, örneğin bir başlıkta paylaşılması gerekir.
  • dosya Bu, özellikle bu dosya değişikliklerinin dahil edildiği tüm sayfalara yansıtılmasını istiyorsanız kullanışlı olur. Bu dosya düz html olabilir ve sunucu tarafındaki herhangi bir ayrıştırıcı tarafından yorumlanması gerekmez. Yine de basit metin dosyaları gibi diğer verileri göstermek için de kullanılabilir.
  • Yardım metinleri içeren bir .txt dosyaları koleksiyonunuz var ve bunları bir web uygulaması aracılığıyla kullanılabilir yapmak istiyorsunuz.
  • Bu dosyalara aşağıdaki gibi bir bağlantı yoluyla erişilebilir:
  • Bu senaryoda, metin dosyasının içeriği bilgileri depolamak için bir veritabanı kullanılmadan doğrudan sayfaya yazdırılacaktır.
  • Uygun bir filtreleme uygulanmazsa, bir saldırgan bağlantıyı, tipik olarak web sunucusunun kısıtlı alanlarına erişimi olan tüm kullanıcıların kimlik bilgileri.
  • Saldırgan, parola ve diğer hassas bilgileri içeren diğer gizli yapılandırma dosyalarının içeriğine de erişebilir ve okuyabilir.

Senaryo 3 : Karşıdan Yüklenen Sunum Dosyaları Dahil Etme

  • PDF dosyaları gibi bazı dosyalar erişildiğinde web tarayıcıları tarafından otomatik olarak açılır.
  • Dosyaları tarayıcı penceresinde göstermek yerine indirilenler olarak sunmak istiyorsanız, tarayıcıya bunu yapmasını bildiren ek bir başlık eklemeniz gerekir. Content-Disposition: attachment başlığını ekleyebilirsiniz . filename = file.pdf dosyasını açtığınızda, tarayıcı dosyaları açmak yerine indirir.
  • Pdf formatında şirket broşürleri var ve web uygulaması ziyaretçileri indirmek için bu bağlantıyı kullanın :
  • İsteğin sanitizasyonu yoksa, saldırgan web uygulamasını oluşturan dosyaların indirilmesini isteyebilir, bu nedenle kaynak kodunu okuyabilir ve diğer web uygulaması güvenlik açıklarını bulabilir veya hassas dosya içeriklerini okuyabilir. Örneğin saldırgan, connection.php dosyasının kaynak kodunu okumak için aynı işlevi kullanabilir :
  • Saldırgan veritabanı kullanıcısını, ana bilgisayarı ve parolayı bulursa, çalınan kimlik bilgileriyle veritabanına uzaktan bağlanabilir.
  • Bu aşamada, kötü amaçlı bilgisayar korsanı veritabanı komutlarını yürütebilir ve veritabanı kullanıcısının dosya yazma ayrıcalıklarına sahip olması durumunda web sunucusunun güvenliğini aşabilir.

@ykslkrkci tarafından Persona Non Grata için yazılmıştır . Telegram grubumuza katılın.

Ben bu dünyadan değilim evladım.