Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.17;
Скачать: CL | DM;

Вниз

мой скрипт   Найти похожие ветки 

 
гастрит ©   (2006-08-21 06:49) [0]

Помогите разобраться!!!
Скрипт вставляет с помощью require содержимое файла, имя которого передавалось данному скипту с помощью ссылки с переменной, например /?filename=111.php. Я тут подумал, если злоумышленник получит доступ к папке, где лежат эти файлы, и заменит их своими, только со своим опасным  скриптом, то моему сайту может прийти конец? Как поступают обычно в таких случаях?


 
_dimka ©   (2006-08-21 10:18) [1]

передавать имя модуля, имена модулей и ссылки на их файлы хранить где-то у в табличке или еще где нить, так у нас будет ссылка выглядеть так
index.php?module=news (к примеру)
вот ті вібираеш из таблицы (или чего нить еще) строку где имя модуля равно news смотриш, где он и уже его подключаеш, если такого нет то переадресовываеш на index.php или еще куда нить...


 
Furyz ©   (2006-08-21 11:38) [2]

смотреть как действует пхпнюк
> [1] _dimka ©  

Согласен , надо сделать таблицу имя модуля - файл
и смотреть и открывать соответственно


 
SerJaNT ©   (2006-08-22 13:15) [3]

> Согласен , надо сделать таблицу имя модуля - файл
> и смотреть и открывать соответственно


Если проверять файл на существование fileExists(), то и никаких таблиц не понадобится и злоумышленик не получит доступ. ну, естественно, нужно еще проверять на спец символы.


 
_dimka ©   (2006-08-22 16:12) [4]

> [3] SerJaNT ©   (22.08.06 13:15)

Можно и так, просто предложил один из вариантов, как сам делал...
ЗЫ: только не fileExists(), а file_exists() ;)


 
SerJaNT ©   (2006-08-23 01:39) [5]

А лучше, конечно так:

if (isset($filename)) {
 switch ($filename) {
   case "filename1":
     include "files/filename1.php";
   break;
   case "filename2":
     include "files/filename2.php";
   break;
   default:
     print "Страница не существует! 404 типа!";
   break;
 }
}


 
гастрит ©   (2006-08-23 01:45) [6]


> Если проверять файл на существование fileExists(), то и
> никаких таблиц не понадобится и злоумышленик не получит
> доступ. ну, естественно, нужно еще проверять на спец символы.
>

А если, допустим, файл-то существует, но заменят его содержимое?


 
гастрит ©   (2006-08-23 01:46) [7]

а, все, понял, протупил...


 
_dimka ©   (2006-08-23 10:13) [8]

> А если, допустим, файл-то существует, но заменят его содержимое?

если ты допустиш чтобы файл подменили, тебя ничто не спасет от взлома :)


 
tButton ©   (2006-08-23 10:24) [9]


> если ты допустиш чтобы файл подменили, тебя ничто не спасет
> от взлома :)

тогда смысл сабжа?
можно и имя файла передавать


 
_dimka ©   (2006-08-23 21:21) [10]

> тогда смысл сабжа?
> можно и имя файла передавать


можно, но только с проверкой на file_exists, иначе можно будет передать имя удаленного файла...



Страницы: 1 вся ветка

Текущий архив: 2006.09.17;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.046 c
15-1155287614
vajo
2006-08-11 13:13
2006.09.17
Штрафы за использование пиратского ПО


10-1123592364
Nicky
2005-08-09 16:59
2006.09.17
помогите с Вордом через OLE


15-1156759329
Nic
2006-08-28 14:02
2006.09.17
К вопросу о стоимости приложений


2-1157046191
Alral
2006-08-31 21:43
2006.09.17
Гипперссылка


15-1156482508
КаПиБаРа
2006-08-25 09:08
2006.09.17
Право на получение платной услуги