Giriş yap
PHP ile url gizleme ve engelleme

Sorum şu:

PHP ile yaptığım basit ftp sisteminde dosya düzenleme işlemi yapıyorum. Ama bir noktada takıldım ve yapamadım.

Düzenleme yaparken url'e şu şekilde çıkıyor:
http://localhost/ftp3.php?id=../../../../home/sv/port27/sv1/config.cfg
Buradaki ../../../../home kısını istediğim gibi değiştirip, sistemin diğer dosyalarında erişebiliyorum. Bunu nasıl engelleyebilirim.
Örneğin:
http://localhost/ftp3.php?id=../../../../etc/php.ini

Birde bunu url'e kısmını daha farklı nasıl yapabilirim.

Bu konuda bana yardımcı olabilecek arkadaşların yardımlarını bekliyorum

Email: [email protected]

Teşekkür ederim.

@tayfunerbilen

rennie
258 gün önce

Soru güncel!

tayfunerbilen
258 gün önce

sen bi base path belirleyeceksin. Örneğin;

$path = 'var/www/html';
$url = $path . '/' . str_replace('..', null, $_GET['url']);
echo $url;

çağırırkende şöyle çağıracaksın;
http://siteadi.com/?url=app/init.php

böylece şu şekilde denese bile çalışmayacak;
http://siteadi.com/?url=../../app/init.php

rennie
258 gün önce

Cevap için teşekkür ederim. Deneyeceğim.

Nasıl akıllıca soru sorulur?
Daha hızlı ve kaliteli cevaplar almak için önce nasıl soru sorulacağını bilmeniz gerekir. Eğer bilmiyorsanız bu yazı serisini okuyun.

Cevap yaz