2016-05-06 5 views
0

Я установил Suhosin на моем выделенном сервере CentOS. centos6.7+php5.4.41+suhosin0.9.36Suhosin и отключить функцию eval

Я хотел бы включить функцию eval для отключения Suhosin. Я прошел через документации и от того, что я понял, лучший сценарий, чтобы добавить это в php.ini:

[suhosin] 
suhosin.executor.eval.blacklist= phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown 

, но это не помешает Eval от выполнения phpinfo(), <?php eval(phpinfo());?>.

Действительно надеясь, что кто-то может указать на мою ошибку.

ответ

1

В вашем примере выполняется phpinfo(), а затем пытается оценить вывод. С учетом вашей конфигурации следующий пример будет заблокирован Suhosin:

eval("phpinfo();");

Пожалуйста, обратите внимание, используя белый список, в отличие от черных списков, если это применимо. С точки зрения безопасности всегда лучше разрешить ограниченный набор функций, а не угадывать все плохие функции.

Также обратите внимание, что сам eval не является функцией и не может быть заблокирован disable_functions и друзьями. Для этого Сухосин предоставляет suhosin.executor.disable_eval.

+0

Большое спасибо! – jf2000

0

Открыть файл php.ini и найти disable_functions. Напишите/Запустите функции, которые вы хотите отключить. Например: disable_functions=passthru,exec,system,popen,eval

+0

Я хочу отключить функции eval, не отключать функции – jf2000

Смежные вопросы