php需要禁用的危险函数

php作为世界上最流行的网站开发语言,与其拥有众多的内建函数,容易入门,方便易用是分不开的。
php的许多建函数除了带给网站强的功能以后,还给网站带来了一系列的安全问题。如eval函数,它能够将作为代码来执行。被别有用心的人利用的话,将对网站造成破坏。除了eval函数,还有许多危险的函数,除了破坏网站,还能威胁系统。如果网站开发都用不到这些函数的话,最好还是把他们禁用。
总结php危险函数有passthru,exec,shell_exec,system,popen,proc_open,chmod,escapeshellcmd,eval,preg_replace,特别是能够直接运行shell的函数,如果没有特别的需求,一定要禁掉,如exec,shell_exec,system,passthru,popen,proc_open。
禁用这些函数的方法就是打开php.ini文件,找到disable_functions=这行,如果前面有;去掉,设置成disable_functions=passthru,exec,shell_exec,system,popen,proc_open,chmod,escapeshellcmd 。
还有一个函数dl,这个函数的功能是动态加载php的库文件.在win系统下动态加载dll文件,在linux系统下加载.so文件,同样对系统构成威胁,建议禁掉,方法是PHP.ini里面enable_dl = off。
经过这样设置后系统应该比较安全了。网站本身的安全性那只能在写代码的时候注意了。

京ICP备14008139号-1