The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"PHP-транслятор HipHop позволил Facebook использовать в разы ..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Re: про функции" –4 +/
Сообщение от diff (??), 04-Апр-11, 20:41 
> А прочитать можно например здесь: http://www.php.su/functions/?eval

Не надо мне всякие сомнительные ссылки подсовывать, если сами свои мысли сформулировать не можете. Кроме того, сайты сообщества PHP я за кладезь Ъ-знаний по программированию не считаю.

Кроме того речь зашла о том, что eval якобы "опасная штука". Может быть его реализация в PHP действительно какая-то угробищная. Только при чем здесь PHP, если речь шла об eval вообще.

Итак.

> PHP - исходно интерпретируемый язык, это уже подразумевает способ вычисления подобных выражений: втавка в текстовый код строки из eval.

Вообще-то существуют разные способы реализации "исходно интерпретируемых языков".
Значит в PHP это так? Он значит все в "текстовом коде" шурует. Может быть. Наверное это действительно очень опасно. )))

> По-моему, очевидно, что в этом случае подставленная строка выполняется точно так же, как и её контекст.

Вообще какой-то набор слов из желания казаться.
Что такое контекст строки? И как же выполняется ее контекст?

>>> В том то и отличие, что передаётся ссылка на существующую функцию
>> То есть вы не знаете, как передавать ссылки на несуществующие на момент трансляции функции.
> Почему же, я вполне смогу забить страницу в памяти бинарным стафом и передать туда управление, если не включена аппаратная защита на выполнение страниц данных. А всяких применений и вариаций на эту тему полно.

Можно и так, только зачем сразу так грубо. Это все спокойно делается на высоком уровне в современных языках. Вы этого тоже не знаете.

По крайней мере вы подтвердили, что можно, тогда при чем здесь "опасность eval"?

> RPC - это remote call, выполняется он на другом хосте и, как  правило, после авторизации

Купились на слово remote? Нет, это как раз то, что вы описали - из другого процесса. Хотя он может и на другом хосте быть, пожалуйста, но не обязательно.
Не знаете предмет. Википедию для начала прочтите, что ли. Если ни одну книжку не открывали.

>> А в eval по-вашему передается только "внешний по отношению к приложению код"?
> Дыра в безопасности как раз в случае подстановок в строку евала внешних данных, как всегда.

Что значит как всегда? Может у вас действительно так всегда.

А если в eval подставляются не внешние данные? Ну в чем опасность именно самого eval? Ну не передавайте ему "внешние данные" без проверки. Или вообще внешних данных не передавайте ему. При чем здесь сам eval, как "опасная штука" по умолчанию?

Не знаете предмет.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
PHP-транслятор HipHop позволил Facebook использовать в разы ..., opennews, 04-Апр-11, 14:33  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру