一些需要禁用的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 相关文章推荐
PHP生成excel时单元格内换行问题的解决方法
Aug 26 PHP
PHP session有效期session.gc_maxlifetime
Apr 20 PHP
获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)
Jun 01 PHP
基于PHP5魔术常量与魔术方法的详解
Jun 13 PHP
php解析url并得到url中的参数及获取url参数的四种方式
Oct 26 PHP
PHP实现bitmap位图排序与求交集的方法
Jul 28 PHP
简单解决微信文章图片防盗链问题
Dec 17 PHP
PHP实现的文件上传类与用法详解
Jul 05 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
Nov 17 PHP
详细解读php的命名空间(二)
Feb 21 PHP
解决php extension 加载顺序问题
Aug 16 PHP
laravel框架学习笔记之组件化开发实现方法
Feb 01 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
聊天室php&mysql(五)
2006/10/09 PHP
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
2007/03/06 PHP
在Mac OS上搭建Nginx+PHP+MySQL开发环境的教程
2015/12/21 PHP
php 魔术常量详解及实例代码
2016/12/04 PHP
JavaScript 撑出页面文字换行
2009/06/15 Javascript
JavaScript高级程序设计 阅读笔记(二十) js错误处理
2012/08/14 Javascript
Get中文乱码IE浏览器Get中文乱码解决方案
2013/12/26 Javascript
Javascript添加监听与删除监听用法详解
2014/12/19 Javascript
jQuery的context属性用法实例
2014/12/27 Javascript
jquery专业的导航菜单特效代码分享
2015/08/29 Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
2016/10/21 Javascript
JavaScript实现动态增删表格的方法
2017/03/09 Javascript
webpack 2.x配置reactjs基本开发环境详解
2017/08/08 Javascript
Vue 去除路径中的#号
2018/04/19 Javascript
浅谈Angular6的服务和依赖注入
2018/06/27 Javascript
AngularJs的UI组件ui-Bootstrap之Tooltip和Popover
2018/07/13 Javascript
微信小程序开发之路由切换页面重定向问题
2018/09/18 Javascript
详解微信小程序之一键复制到剪切板
2019/04/24 Javascript
ES6顶层对象、global对象实例分析
2019/06/14 Javascript
js实现图片粘贴到网页
2019/12/06 Javascript
在Python中使用mechanize模块模拟浏览器功能
2015/05/05 Python
Python写入CSV文件的方法
2015/07/08 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例
2019/05/04 Python
使用python爬取微博数据打造一颗“心”
2019/06/28 Python
Python Django Vue 项目创建过程详解
2019/07/29 Python
贝玲妃英国官网:Benefit英国
2018/02/03 全球购物
个人自我鉴定写法
2013/11/30 职场文书
自动化职业生涯规划书范文
2014/01/03 职场文书
大学生校园创业计划书
2014/02/08 职场文书
电厂职工自我鉴定
2014/02/20 职场文书
股权转让协议书范本
2014/04/12 职场文书
小学公民道德宣传日活动总结
2015/03/23 职场文书
2016大学军训心得体会
2016/01/11 职场文书
小学三年级数学教学反思
2016/02/16 职场文书
学校趣味运动会开幕词
2016/03/04 职场文书