php 安全禁止函数,PHP推荐禁用函数disable_functions PHP安全配置

最近服务器的phpmyadmin一直不正常,原以为配置错误,结果发现是前段时间修改disable_function引起的,

逐步比较disable_function的参数发现,原来是因为opendir,readdir,dir,chdir这4个参数引起的

禁用opendir报错如下:

phpmyadmin就会出现如下错误

phpMyAdmin-ERROR: cannot open themes folder: ./themes

Default theme pmahomme not found!

Theme original not found!

Theme not found!

但是phpspy就不能列出其他虚拟主机的目录

官方解释:http://cn.php.net/manual/zh/function.opendir.php

opendir:打开目录句柄

加上readdir

phpmyadmin首页能打开,但是不能登陆,502 Bad Gateway

phpspy此时不能列出其他虚拟主机目录

官方解释:http://cn.php.net/manual/zh/function.readdir.php

readdir — 从目录句柄中读取条目,返回目录中下一个文件的文件名

最后总结出比较安全的php.ini的disable_functions如下(服务器没用到采集):

disable_functions = exec,passthru,popen,proc_open,shell_exec,system,phpinfo,assert,chroot,getcwd,scandir,unlink,delete,rmdir,rename,chgrp,chmod,chown,fopen,copy,mkdir,file,file_get_contents,fputs,fwrite,dir

禁用这些函数,网站和phpmyadmin都正常,而且不能上传文件

利用webshell也不能查看服务器上的文件,不能删除或者修改

唯一的缺点:能够查看其他虚拟主机的目录,但是仅仅只能看看,做不了什么事情

如果服务器用到了采集,需要启用unlink和fopen,列表如下:

disable_functions = exec,passthru,popen,proc_open,shell_exec,system,phpinfo,assert,chroot,getcwd,scandir,delete,rmdir,rename,chgrp,chmod,chown,copy,mkdir,file,file_get_contents,fputs,fwrite,dir

unlink官方解释为:http://cn.php.net/manual/zh/function.unlink.php

fopen官方解释为:http://cn.php.net/manual/zh/function.fopen.php

如果需要用到采集,需要启用这几个函数:

file_get_contents,fputs,fwrite,dir

禁用的函数列表为:

disable_functions = exec,passthru,popen,proc_open,shell_exec,system,phpinfo,assert,chroot,getcwd,scandir,delete,rmdir,rename,chgrp,chmod,chown,copy,mkdir,file

http://www.linuxso.com/jiaobenruqin/11724.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值