|
|
|
| Здравствуйте уважаемые форумчане подскажите пожалуйста безопасен ли этот код к инклюдам заранее спасибо
///////////////////////////////////////////////////////////
function urls($str,$param) {
$url = trim($_SERVER['REQUEST_URI'],'/');
if( preg_match ($str, $url)) { require_once $param.'.php'; }
else { print 'страница не найдена!!!'; }
}
///////////////////////////////////////////////////////////
urls('/^hoom$/','MyTest');
|
| |
|
|
|
|
|
|
|
для: artart
(23.03.2013 в 11:20)
| | смотря откуда придут параметры. на вид не юзабильный подход, плюс перед подстановкой в preg_match желательно экранировать | |
|
|
|
|
|
|
|
для: psychomc
(23.03.2013 в 13:12)
| | приходят от REQUEST_URI !!!
а это клиентский код urls('/^hoom$/','MyTest');
а что значит не юзабильный подход ?
можно ли при такой логики провести что то вроде ../../../ ?
//сценарий типа вот этого
require_once $_SERVER['REQUEST_URI'].'.php'//уязвим
|
но вообщем если такой подход уязвим то пожалуйста подскажите как ? | |
|
|
|
|
|
|
|
для: artart
(23.03.2013 в 20:41)
| | я про параметры передаваемые функции. думаю ../../ вряд ли, но дело не в этом. по поводу юзабильности покурите http://framework.zend.com/manual/1.12/en/zend.controller.router.html#zend.controller.router.routes.standard | |
|
|
|
|
|
|
|
для: psychomc
(23.03.2013 в 23:02)
| | большое спасибо за безопасность я понял .
А на счет юзабилити - в некоторых фреймворках , которые кстати пользуются популярностью в
таких гигантах как google и yandex , архитектура вызываемых сценариев на исполнение
такая так что кому как удобно .
P.S на счет вашей ссылки спасибо покурю, мне показалось что там про стандартный шаблон проектирования фронт контроллер | |
|
|
|