一些需要禁用的PHP危险函数(disable_functions)


Posted in PHP onFebruary 23, 2012

phpinfo()
功能描述:输出 PHP 环境信息以及相关的模块、WEB 环境等信息。
危险等级:中

passthru()
功能描述:允许执行一个外部程序并回显输出,类似于 exec()。
危险等级:高

exec()
功能描述:允许执行一个外部程序(如 UNIX Shell 或 CMD 命令等)。
危险等级:高

system()
功能描述:允许执行一个外部程序并回显输出,类似于 passthru()。
危险等级:高

chroot()
功能描述:可改变当前 PHP 进程的工作根目录,仅当系统支持 CLI 模式
PHP 时才能工作,且该函数不适用于 Windows 系统。
危险等级:高

scandir()
功能描述:列出指定路径中的文件和目录。
危险等级:中

chgrp()
功能描述:改变文件或目录所属的用户组。
危险等级:高

chown()
功能描述:改变文件或目录的所有者。
危险等级:高

shell_exec()
功能描述:通过 Shell 执行命令,并将执行结果作为字符串返回。
危险等级:高

proc_open()
功能描述:执行一个命令并打开文件指针用于读取以及写入。
危险等级:高

proc_get_status()
功能描述:获取使用 proc_open() 所打开进程的信息。
危险等级:高

error_log()
功能描述:将错误信息发送到指定位置(文件)。
安全备注:在某些版本的 PHP 中,可使用 error_log() 绕过 PHP safe mode,
执行任意命令。
危险等级:低

ini_alter()
功能描述:是 ini_set() 函数的一个别名函数,功能与 ini_set() 相同。
具体参见 ini_set()。
危险等级:高

ini_set()
功能描述:可用于修改、设置 PHP 环境配置参数。
危险等级:高

ini_restore()
功能描述:可用于恢复 PHP 环境配置参数到其初始值。
危险等级:高

dl()
功能描述:在 PHP 进行运行过程当中(而非启动时)加载一个 PHP 外部模块。
危险等级:高

pfsockopen()
功能描述:建立一个 Internet 或 UNIX 域的 socket 持久连接。
危险等级:高

syslog()
功能描述:可调用 UNIX 系统的系统层 syslog() 函数。
危险等级:中

readlink()
功能描述:返回符号连接指向的目标文件内容。
危险等级:中

symlink()
功能描述:在 UNIX 系统中建立一个符号链接。
危险等级:高

popen()
功能描述:可通过 popen() 的参数传递一条命令,并对 popen() 所打开的文件进行执行。
危险等级:高

stream_socket_server()
功能描述:建立一个 Internet 或 UNIX 服务器连接。
危险等级:中

putenv()
功能描述:用于在 PHP 运行时改变系统字符集环境。在低于 5.2.6 版本的 PHP 中,可利用该函数
修改系统字符集环境后,利用 sendmail 指令发送特殊参数执行系统 SHELL 命令。
危险等级:高

禁用方法如下:
打开/etc/php.ini文件,
查找到 disable_functions ,添加需禁用的函数名,如下:
phpinfo,eval,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen

PHP 相关文章推荐
php4的彩蛋
Oct 09 PHP
ADODB类使用
Nov 25 PHP
php heredoc和phpwind的模板技术使用方法小结
Mar 28 PHP
php 将excel导入mysql
Nov 09 PHP
PHP连接SQLServer2005方法及代码
Dec 26 PHP
初识php MVC
Sep 10 PHP
ubuntu下配置nginx+php+mysql详解
Sep 10 PHP
浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)
Mar 14 PHP
PHP判断json格式是否正确的实现代码
Sep 20 PHP
PHP检测接口Traversable用法详解
Dec 29 PHP
Laravel5.1 框架路由基础详解
Jan 04 PHP
浅析PHP中的 inet_pton 网络函数
Dec 16 PHP
PHP面向对象法则
Feb 23 #PHP
优化PHP程序的方法小结
Feb 23 #PHP
数据库中排序的对比及使用条件详解
Feb 23 #PHP
PHP中几个常用的魔术常量
Feb 23 #PHP
PHP教程之PHP中shell脚本的使用方法分享
Feb 23 #PHP
php tp验证表单与自动填充函数代码
Feb 22 #PHP
PHP 设计模式之观察者模式介绍
Feb 22 #PHP
You might like
压力如何影响浓缩咖啡品质
2021/03/03 咖啡文化
PHP4中实现动态代理
2006/10/09 PHP
PHP 读取和修改大文件的某行内容的代码
2009/10/30 PHP
一个简单php扩展介绍与开发教程
2010/08/19 PHP
如何在旧的PHP系统中使用PHP 5.3之后的库
2015/12/02 PHP
php 无限级分类 获取顶级分类ID
2016/03/13 PHP
PHP第三方登录―QQ登录实现方法
2017/02/06 PHP
php-fpm开启状态统计的方法详解
2017/06/23 PHP
一个实用的php验证码类
2017/07/06 PHP
如何利用预加载优化Laravel Model查询详解
2017/08/11 PHP
关于JavaScript的面向对象和继承有利新手学习
2013/01/11 Javascript
框架页面高度自动刷新的Javascript脚本
2013/11/01 Javascript
javascript中字符串的定义示例代码
2013/12/19 Javascript
javascript基础知识分享之类与函数化
2016/02/13 Javascript
浅析BootStrap栅格系统
2016/06/07 Javascript
根据Bootstrap Paginator改写的js分页插件
2016/12/25 Javascript
微信小程序日期选择器实例代码
2018/07/18 Javascript
jQuery实现侧边栏隐藏与显示的方法详解
2018/12/22 jQuery
es6函数之尾调用优化实例分析
2020/04/25 Javascript
[03:39]2015国际邀请赛主赛事首日精彩回顾
2015/08/05 DOTA
[02:05:03]完美世界DOTA2联赛循环赛 LBZS VS Matador BO2 10.28
2020/10/28 DOTA
python中hashlib模块用法示例
2017/10/30 Python
matplotlib绘制动画代码示例
2018/01/02 Python
python正则中最短匹配实现代码
2018/01/16 Python
Python 程序员必须掌握的日志记录
2020/08/17 Python
俄罗斯运动鞋商店:Sneakerhead
2018/05/10 全球购物
linux面试题参考答案(1)
2016/01/22 面试题
银行优秀员工事迹
2014/02/06 职场文书
《李时珍夜宿古寺》教学反思
2014/04/09 职场文书
实验室的标语
2014/06/20 职场文书
班级课外活动总结
2014/07/09 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
2014领导班子专题民主生活会对照检查材料思想汇报
2014/09/23 职场文书
学位证书委托书
2014/09/30 职场文书
横店影视城导游词
2015/02/06 职场文书
CentOS8.4安装Redis6.2.6的详细过程
2021/11/20 Redis