禁用危险函数-PHP安全

发布时间:2020-04-16 21:54:17 浏览量:470 标签: 危险函数 PHP

PHP配置文件中的disable_functions选项能够在PHP中禁用函数,PHP内置函数中存在很多危险性极高的函数,在生成环境上一定要注意使用。如果设置不当,严重可能造成系统崩溃。


内置函数是一把双刃剑,既能帮助开发人员解决问题,同时也会给安全上造成隐患,所以合理的使用内置函数是一个置关重要的问题,下面一起来看一下危险的内置函数。

chgrp

函数功能:改变文件或目录所属的用户组;

危害性:高

chown

函数功能:改变文件或目录的所有者;

危害性:高

chroot

函数功能:改变当前PHP进程的工作根目录,仅当系统支持CLI模式时PHP才能工作,且该函数不适用于Windows系统;

危害性:高

dl

函数功能:在PHP运行过程中(非启动时)加载一个PHP外部模块;

危害性:高

exec

函数功能:允许执行一个外部程序,如unix shell或cmd命令等;

危害性:高

ini_alter

函数功能:是ini_set()函数的一个别名函数,功能与ini_set()相同;

危害性:高

ini_restore

函数功能:可用于将PHP环境配置函数恢复为初始值;

危害性:高

ini_set

函数功能:可用于修改、设置PHP环境配置参数;

危害性:高

passthru

函数功能:允许执行一个外部程序并显示输出,类似于exec();

危害性:高

pfsockopen

函数功能:建立一个Internet或unix域的socket持久连接;

危害性:高

phpinfo

函数功能:输出PHP环境信息以及相关模块、Web环境信息;

危害性:高

popen

函数功能:可通过popen()的参数传递一条命令,并对popen()所打开的文件进行执行。

危害性:高

proc_get_status

函数功能:获取使用proc_open()所打开进程信息;

危害性:高

proc_open

执行一个命令并打开文件指针用于读取以及写入;

危害性:高

putenv

用户PHP运行时改变系统字符集环境,在低于5.2.6版本的PHP中,可利用该函数修改系统字符集环境后,利用sendmail指令发送特殊参数执行系统shell命令;

危害性:高

readlink

函数功能:返回符号连接执行的目标文件内容;

危害性:中

scandir

函数功能:列出指定路径中的文件和目录;

危害性:中

shell_exec

函数功能:通过shell执行命令,并将执行结果作为字符串返回;

危害性:高

stream_socket_server

函数功能:建立一个Internet或unix服务器连接;

危害性:中

symlink

函数功能:对已有的target建立一个名为link的符号连接;

危害性:高

syslog

函数功能:可调用unix系统的系统层syslog()函数;

危害性:中

system

函数功能:允许执行一个外部程序并回显输出,类似于passthru();

危害性:高