passthru()

功能叙述性说明:我们同意将运行外部程序和回音输出。分类似至 exec()。

临界水平:高

exec()

功能叙述性说明:同意运行外部程序(例如 UNIX Shell 要么 CMD 命令等)。

危急等级:高

assert()

功能描写叙述:假设依照默认值来。在程序的运行过程中调用assert()来进行推断表达式,遇到false时程序也是会继续运行的。跟eval()类似。只是eval($code_str)仅仅是运行符合php编码规范的$code_str。assert的使用方法却更具体一点。

危急等级:高

system()

功能描写叙述:同意运行一个外部程序并回显输出。类似于 passthru()。

危急等级:高

chroot()

功能描写叙述:可改变当前 PHP 进程的工作根文件夹。仅当系统支持 CLI 模式PHP 时才干工作,且该函数不适用于 Windows 系统。

危急等级:高

chgrp()

功能描写叙述:改变文件或文件夹所属的用户组。

危急等级:高

chown()

功能描写叙述:改变文件或文件夹的全部者。

危急等级:高

shell_exec()

功能描写叙述:通过 Shell 运行命令。并将运行结果作为字符串返回。

危急等级:高

proc_open()

功能描写叙述:运行一个命令并打开文件指针用于读取以及写入。

危急等级:高

ini_restore()

功能描写叙述:可用于恢复 PHP 环境配置參数到其初始值。

危急等级:高

dl()

功能描写叙述:在 PHP 进行执行过程其中(而非启动时)载入一个 PHP 外部模块。

危急等级:高

readlink()

功能描写叙述:返回符号连接指向的目标文件内容。

危急等级:中

symlink()

功能描写叙述:在 UNIX 系统中建立一个符号链接。

危急等级:高

popen()

功能描写叙述:可通过 popen() 的參数传递一条命令,并对 popen() 所打开的文件进行运行。

危急等级:高

stream_socket_server()

功能描写叙述:建立一个 Internet 或 UNIX server连接。

危急等级:中

pfsockopen()

功能描写叙述:建立一个 Internet 或 UNIX 域的 socket 持久连接。

危急等级:高

putenv()

功能描写叙述:用于在 PHP 执行时改变系统字符集环境。在低于 5.2.6 版本号的 PHP 中,可利用该函数改动系统字符集环境后,利用 sendmail 指令发送特殊參数执行系统 SHELL 命令。

危急等级:高

改动方法:

打开/etc/php.ini文件,

查找到 disable_functions ,改动为:disable_functions=passthru,exec,assert,system,chroot,chgrp,chown,shell_exec,proc_open,ini_restore,dl,readlink,symlink,popen,stream_socket_server,pfsockopen,putenv

哦。eval禁用不了。须要借助:php Suhosin。

禁用的方法能够依据自己的环境来酌情加入,事实上curl_exec(),fopen(),file_get_contents()等都是非常危急的,另一些文件夹浏览的方法,可是实际项目中要用到,所以不能禁用了。

nginx的话,能够限制一些静态文件路径不能运行php。例如以下(文件夹改成自己的静态文件文件夹):

  1. location ~ /(style|html|cache|config|js|css|image|log|images|uploads|upload|attachments|templets)/.*\.(php|php5)? $ {
  2. deny all;
  3. }

这样安全性也会更好一些。然后兴许会多补充一些,工作也忙。

很多其它:http://www.webyang.net/Html/web/article_125.html

版权声明:本文博主原创文章,博客,未经同意不得转载。

php禁用一些重要功能的更多相关文章

  1. jquery禁用右键单击功能屏蔽F5刷新

    1.禁用右键单击功能$(document).ready(function() { $(document).bind("contextmenu",function(e) { aler ...

  2. 禁用选择文本功能user-select

    有时候,我们为了用户体验,需要禁用选择文本功能. 这需要用到一个CSS属性:user-select,user-select的文档点这里 user-select有两个值:none:用户不能选择文本tex ...

  3. session与cookie的区别是什么?如果客户端禁用了cookie功能,将会对session有什么影响?

    cookie 和session 的区别: a.cookie数据存放在客户的浏览器上,session数据放在服务器上. b.cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE ...

  4. laravel 中禁用掉注册功能

    想让 laravel 做单用户登录,禁止掉注册功能 在 RegisterController 添加以下方法 public function showRegistrationForm() { retur ...

  5. 联想电脑Fn+F6禁用触摸板功能不管用

    我的原因是电脑没有安装触摸板驱动,解决方法:去联想官网根据自己的主机编号下载适合自己的触摸板驱动,安装重启即可解决

  6. Win7 如何禁用“切换用户”功能

    1.按win+r,输入gpedit.msc,点击确定: 2.依次点击计算机配置--管理模块--系统--登录,右侧列表中找到“隐藏“快速用户切换”的入口点”: 3.双击隐藏“快速用户切换”的入口点,点击 ...

  7. win10上如何启用或禁用Windows功能

    Windows10上提供了很多的功能,比如打印服务.传真服务.媒体服务等,怎样启用或禁用某些Windows功能呢? 工具/原料   windows10 方法/步骤     点击左下角的Windows图 ...

  8. 联想ThinkPadE455实现FN禁用(F1-F12标准功能与特殊功能切换)

    系统:Win7 64 位     机型:联想ThinkPadE455笔记本 方法一:键盘Fn热键切换功能(亲测可用) Fn+Esc   FnLk  组合键方法启用或禁用Fn锁定功能 具体说明(这个逻辑 ...

  9. WPF编程,窗体最大化、最小化、关闭按钮功能的禁用

    原文:WPF编程,窗体最大化.最小化.关闭按钮功能的禁用 版权声明:我不生产代码,我只是代码的搬运工. https://blog.csdn.net/qq_43307934/article/detail ...

随机推荐

  1. 几款开源ESB总线的比较(转)

    现有的开源ESB总线中,自从2003年第一个开源总线Mule出现后,现在已经是百花争鸣的景象了.现在我就对现有的各种开源ESB总线依据性能.可扩展性.资料文档完整程度以及整合难易程度等方面展开. CX ...

  2. 【Android基础】短信的发送

    //Button的点击事件 @Override public void onClick(View v) { // 接受者电话号码 Uri uri = Uri.parse("smsto:123 ...

  3. hdu 4856 Tunnels(bfs+状态压缩)

    题目链接:hdu 4856 Tunnels 题目大意:给定一张图,图上有M个管道,管道给定入口和出口,单向,如今有人想要体验下这M个管道,问最短须要移动的距离,起点未定. 解题思路:首先用bfs处理出 ...

  4. Webots入门(二)-build up a controller

    A simple controller 控制器程序读取传感器的值,然后改动行走速度来避开障碍物. 以下是控制器源码mybot_simple.c: #include<webots/robot.h& ...

  5. 存储管理(两):openfiler它accounts

    存储管理(一个):openfiler演示和存储理解 openfiler的用户集中控制主要分为ldap和ad实现,当中openfiler本身可以作为ldapserver.使openfiler上的全部功能 ...

  6. C++学习笔记25,析构函数总是会宣布virtual

    为了永远记住析构函数声明virtual----><<effective c++>> 为这句话不一定对,但无需质疑的是这句话是非常实用的. 查看以下的样例: #includ ...

  7. Ubuntu 下一个disk清理保护

    有很长一段时间ubuntu人,很多人会突然提示:磁盘空间不足1G. 然后很长一段时间分析..最近遇到的类别似问题.记录,如下面: 一个:.xsession-errors.old 能够在终端看到主用户文 ...

  8. default argument given of parameter 的问题

    今天写了一个类,当中的一个方法用到了默认參数,结果报了  "default argument given of parameter 的问题 " 错误. 类头文件的声明例如以下: v ...

  9. NUnit3 Test Adapter vs2015

    NUnit的安装 前言:NUnit是什么? NUnit 是一个单元测试框架,专门针对于.NET来写的.NUnit是xUnit家族种的第4个主打产品,完全由C#语言来编写,并且编写时充分利用了许多.NE ...

  10. cocos2d-x3.x屏蔽遮罩层屏蔽触摸button

    cocos2d-x3.x触摸方法改变后,.屏蔽掉的层实际上触摸事件的非常easy,首先touchbegan一定要回true,第二,该事件被设定为听吞没触摸true.最近登录触摸水平必须低于0,现在,我 ...