Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Полная блокировка
Форумы портала PHP.SU » PHP » Программирование на PHP » Полная блокировка

Страниц (1): [1]
 

1. Bkmz - 01 Апреля, 2009 - 13:31:47 - перейти к сообщению
Есть пара идей, но столкнулся с очень серьезной проблемой. Начну по порядку.
Идея заключается, грубо говоря, в создании sandbox, в котором люди будут писать что то своё. Так вот, чтобы не было проблем, я придумал такую методику, блочится АБСОЛЮТНО ВСЁ, даже "Echo",но кроме того что работает с массивами переменными, и пишется к примеру функция output, отличие от эхо заключается в том что там будет идти проверка на содержание... Не говорите зачем, и так.... Вообщем нужен дельный совет.
пробывал блочить вызов функций, не всегда срабатывает. Полез в гугл... И понял что такого еще никто не придумывал. Так вот, спрашиваю вас, есть ли такая фича, чтобы можно было заблочить функции, конструкции, классы, а разрешить выполнять только то что я разрешу.
После гугла пришла идея копания сорцов самого пхп, но так как это всё страшно и очень опасно Улыбка вдруг потом не собирется... Прошу помощь у вас, Может проще написать нативную пхпшную функцию которая дальше в коде блочит вызов всего, и вторую которая разрешает? Может в зенд написать? Сам я на диалапе, так что в данный момент не могу ничего скачать, да потестить...
Единственное что не нужно блочить, в принципе это можно будет прописать в исключение, так это работа с переменными и массивами, так как это ничего болезненого не может сделать. Короче САБЖ
2. IOpeH - 01 Апреля, 2009 - 13:52:52 - перейти к сообщению
параноя ?
3. EuGen - 01 Апреля, 2009 - 14:12:34 - перейти к сообщению
Заблокировать функции можно через php.ini:

Классы тоже:

Пользовательские не выйдет таким образом.
4. Bkmz - 01 Апреля, 2009 - 17:45:43 - перейти к сообщению
EuGen пишет:
Заблокировать функции можно через php.ini:
CODE:
скопировать код в буфер обмена
disable_functions
Классы тоже:
CODE:
скопировать код в буфер обмена
disable_classes
Пользовательские не выйдет таким образом.

Ух ты... Не понял а я блин не знал... Хм Хоть и первое апреля сегодня, но все таки... эти варианты не проходят, echo print die etc... у меня увы не блочятся, а это и прогнозуемо, это не функции и классы, а это конструкции. И вы себе представляете я буду абсолютно все функции прописывать??? это ведь не реально, как по мне проще написать нативную функцию.... а не е№&#ться, занимаясь поиском и записывание функций...
IOpeH пишет:
параноя ?


Нужно кодом пхп перед выполнение eval заблочить все функции конструкции и классы которые идут с пхп. если вы меня не правильно поняли...
5. Stierus - 01 Апреля, 2009 - 18:33:05 - перейти к сообщению
IOpeH пишет:
параноя ?
Самая что ни на есть настоящая Улыбка Либо человек чего-то недопонимает, либо бредит ...
6. Гость - 01 Апреля, 2009 - 18:55:42 - перейти к сообщению
Вам нужен код-фильтр? Регулярные выраженитя вам в руки и режьте все операторы и функции котлорые вам мешают -)
7. EuGen - 01 Апреля, 2009 - 19:41:36 - перейти к сообщению
Тогда что то вроде
eval+preg_replace

И читайте правила форума, здесь любой ответ нужно расценивать как желание помочь, и, если Вы будете реагировать подобным образом, оно - это самое желание, может отпасть.

 

Powered by ExBB FM 1.0 RC1