| |
|
|
| | Не знал как назвать тему, но думаю мысль ясна.
У меня в скрипте, параметр для функции scandir() передается в GET, /img/album1, /img/album2. => scandir(“/img/album1”);
И скрипт уже отображает все что есть в папке.
Но как мне обезопасить себя, что бы злые пользователи не смогли написать допустим ../../../../etc/ и получить его содержимое.
Скрипт будет ползать только в пределах папки /img/ и не куда ниже, платформа Win32. | |
| |
|
|
| |
|
|
| |
для: Бамси
(27.08.2007 в 16:34)
| | |
if (strpos(dir, '/') !== false) die();
chdir('img/');
|
| |
| |
|
|
| |
|
|
| |
для: Бамси
(27.08.2007 в 16:34)
| | |
<?
scandir("/img/".$_GET['dir']);
|
а dir проверять чтобы не содержал ничего кроме цифр и букв... а еще лучше вообще вот так:
<?
$dir=intval($_GET['dir']);
scandir("/img/album".$dir);
|
ну это в том случае если у вас все каталоги подобным образом нумеруются. | |
| |
|
|