先说结果:
php中设置disable_functions,无法禁用eval
因为eval是语言构造器,不是函数
<?php $a = 'phpinfo'; $a(); //这是可以运行的 $code = 'echo time();'; $a = 'eval'; eval($code); //这是可以运行的 $a($code); //Call to undefined function eval() 函数不存在 /* 下面代码也会报错 */ function eval(){ }
也就是说,在不使用扩展的前提下,eval无法被禁用,但也无法通过拼接或其他方式隐藏这个函数.
要找到eval的木马,只需要全文搜素 'eval'即可
那应该怎么禁用eval呢?
如果想禁掉eval可以用php的扩展 Suhosin
不用扩展,没办法禁用