|
Правила •
Регистрация •
Справка Сообщения за день • Поиск |
|
|
|
Опции темы | Опции просмотра |
Зам старшего участника
|
может я не совсем правильно выразился.
щас постораюсь объяснить свои размышления 1 - основное количество модулей пишутся примерно по одному шаблону или переделываются из других модулей (соответственно и баги одни и те же). 2 - обычно программисты называя переменные используют опорную информацию (например в базе есть поле id и переменную называют $id) 3- в модулях часто используются $HTTP_POST_VARS, $HTTP_GET_VARS, $_GET, $_POST - как правило проверяется только одна из этих переменных, значит при передаче переменной другим способом можно нередать информацию которая не будет проверена скриптом. устранить 3-ю причину можно заменой всех $HTTP_POST_VARS $HTTP_GET_VARS $_GET $_POST на $_REQUEST (просто взять и заменить во всех файлах все выше указанные глобальные переменные на $_REQUEST, таким образом мы избавимся сразу от части проблем) для устранения дыр когда программист "забывает" обнулить используемую переменную или принить её в скрипт напрямую а не через глобальные переменные (которые он проверит на тип) тоесть первичное обращение к переменной происходит не по $_REQUEST['имя_переменной'], а по $имя_переменной мы можем избавится обнулив все "стандартные" имена переменных в начале скриптов. например: вставить в common.php следующий код Код:
$id=0; $lid=0; $cid=0; $uid=0; $name=""; $uname=""; $idname=""; $uname=""; $text=""; ... Мне второй способ и самому не очень нравиться, но он может закрыть дыру указанную выше, (покрайней мере нельзя будет использовать "стандартные" переменные без их вызова через глобальные переменные.) |
||||
|
|
Стар я для всего этого
|
Я понял вас - а теперь представьте, что я выкачу версию RunCMS в которой обнуляются все основные переменные как вы сказали - значете, что начнется?
50% модулей (а то и больше) РАБОТАТЬ НЕ БУДЕТ без переделки, и во всем этом обвинят разработчиков RunCMS. Большинство вебмастеров, не могут в тексте найти echo $переменная, что уж говорить про какие-то осмысленные правки. - посмотрите на вопросы на форумах "А почему в RunCMS глючит ... ?" "Глупые винят других. Умные – себя. А мудрые идут вперед". (С) |
||||
|
|
Проживающий
|
HDMan разработчики, как сказал Michael-XIII, переписывают потихоньку на $_REQUEST, но делать 3 вариант, ИМХО, неправильно.
В стандартных модулях со временем все исправим, а вот о сторонних пусть думаю разработчики, либо те, кто все это дело использует на свой срах и риск, но в грамотно написанном модуле все должно проверяться и приводится. Форум RunLiveCMS Багтрекер RunLiveCMS Энциклопедия RunLiveCMS |
||||
|
|
Участник
|
Скажите я вот сейчас всерьез занялся безопасностью, ктото постоянно пытается хакнуть меня! И както рыская в инете нашел вот такую фигню:
PHP код:
|
||||
|
|
): ǝҺɐни dиw ɐн иd⊥оwɔ
|
Напильник для RUNCMS Строим помаленьку Для гурманов Мебель для дома |
||||
|
|
Участник
|
Сорри что не в тему, но может кто нибудь переделает этот баг фикс на 1.4, а то сказано что дыра может быть и в более ранних версиях.
Я понимаю, что этого делать никто не должен, но может всё таки найдётся такой? |
||||
|
|
Стар я для всего этого
|
фикс работает на версиях до 1.2 включительно (на 1.2 ставил лично).
Могут быть пропущены пара языковых констант, но это некритично Читайте первоисточник http://runcms.org/modules/news/ "А почему в RunCMS глючит ... ?" "Глупые винят других. Умные – себя. А мудрые идут вперед". (С) |
||||
|
|
Участник
|
Цитата:
|
||||
|
|
|
|
|
Powered by: vBulletin Version 3.0 Copyright ©2000-2024, Jelsoft Enterprises Ltd. |
Все разделы прочитаны - Руководство форума - Архив - Вверх |