Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.09.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
гастрит ©   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.204 c
15-1156269017
Nic
2006-08-22 21:50
2006.09.17
Отправление лесом


2-1156537707
Itonix
2006-08-26 00:28
2006.09.17
Tmemo


2-1156846140
RomanH
2006-08-29 14:09
2006.09.17
Excel файл как набор данных


15-1156945347
vecna
2006-08-30 17:42
2006.09.17
Mazda vs Focus


1-1154958562
webpauk
2006-08-07 17:49
2006.09.17
Расположение кнопок в ToolBar





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский