我已经在我的专用CentOS服务器上安装了Suhosin。centos6.7+php5.4.41+suhosin0.9.36
我想启用Suhosin的禁用eval功能。我查看了文档,据我所了解,最好的场景是在php.ini中添加这样的内容:
[suhosin]
suhosin.executor.eval.blacklist= phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown但是它不会阻止eval执行phpinfo(),<?php eval(phpinfo());?>。
真希望有人能指出我的错误。
发布于 2016-05-11 07:11:56
您的示例执行phpinfo(),然后尝试计算输出。给定您的配置,以下示例将被suhosin阻止:
eval("phpinfo();");
如果适用,请考虑使用白名单而不是黑名单。从安全的角度来看,最好允许一组有限的函数,而不是猜测所有的坏函数。
还要注意的是,eval本身不是一个函数,不能被disable_functions和朋友阻塞。Suhosin为此提供了suhosin.executor.disable_eval。
发布于 2016-05-06 02:22:58
打开php.ini文件并查找disable_functions。编写/登记要禁用的函数。例如:disable_functions=passthru,exec,system,popen,eval
https://stackoverflow.com/questions/37063160
复制相似问题