PHP危险函数(23个)暂时记录
在编译 PHP 时,如⽆特殊需要,⼀定禁⽌编译⽣成 CLI 命令⾏模式的 PHP 解析⽀持。可在编译时使⽤ –disable-CLI。⼀旦编译⽣成 CLI 模式的PHP,则可能会被⼊侵者利⽤该程序建⽴⼀个WEB Shell 后门进程或通过PHP 执⾏任意代码。
1.phpinfo()
功能描述:输出 PHP 环境信息以及相关的模块、WEB 环境等信息。
危险等级:中
2.passthru()
功能描述:允许执⾏⼀个外部程序并回显输出,类似于 exec()。
危险等级:⾼
3.exec()
功能描述:允许执⾏⼀个外部程序(如 UNIX Shell 或 CMD 命令等)。
危险等级:⾼
4.system()
功能描述:允许执⾏⼀个外部程序并回显输出,类似于 passthru()。
危险等级:⾼
5.chroot()
功能描述:可改变当前 PHP 进程的⼯作根⽬录,仅当系统⽀持 CLI 模式PHP 时才能⼯作,且该函数不适⽤于 Windows 系统。
危险等级:⾼
6.scandir()
功能描述:列出指定路径中的⽂件和⽬录。
危险等级:中
7.chgrp()
功能描述:改变⽂件或⽬录所属的⽤户组。
危险等级:⾼
8.chown()
功能描述:改变⽂件或⽬录的所有者。
危险等级:⾼
9.shell_exec()
功能描述:通过 Shell 执⾏命令,并将执⾏结果作为字符串返回。
危险等级:⾼
10.proc_open()
功能描述:执⾏⼀个命令并打开⽂件指针⽤于读取以及写⼊。
危险等级:⾼
11.proc_get_status()
功能描述:获取使⽤ proc_open() 所打开进程的信息。
危险等级:⾼
12.error_log()
功能描述:将错误信息发送到指定位置(⽂件)。
安全备注:在某些版本的 PHP 中,可使⽤ error_log() 绕过 PHP safe mode,
执⾏任意命令。
危险等级:低
13.ini_alter()
功能描述:是 ini_set() 函数的⼀个别名函数,功能与 ini_set() 相同。具体参见 ini_set()。
危险等级:⾼
14.ini_set()
功能描述:可⽤于修改、设置 PHP 环境配置参数。
危险等级:⾼
15.ini_restore()
字符串函数php 功能描述:可⽤于恢复 PHP 环境配置参数到其初始值。
危险等级:⾼
16.dl()
功能描述:在 PHP 进⾏运⾏过程当中(⽽⾮启动时)加载⼀个 PHP 外部模块。
危险等级:⾼
17.pfsockopen()
功能描述:建⽴⼀个 Internet 或 UNIX 域的 socket 持久连接。
危险等级:⾼
18.syslog()
功能描述:可调⽤ UNIX 系统的系统层 syslog() 函数。
危险等级:中
19.readlink()
功能描述:返回符号连接指向的⽬标⽂件内容。
危险等级:中
20.symlink()
功能描述:在 UNIX 系统中建⽴⼀个符号链接。
危险等级:⾼
21.popen()
功能描述:可通过 popen() 的参数传递⼀条命令,并对 popen() 所打开的⽂件进⾏执⾏。
危险等级:⾼
22.stream_socket_server()
功能描述:建⽴⼀个 Internet 或 UNIX 服务器连接。
危险等级:中
23.putenv()
功能描述:⽤于在 PHP 运⾏时改变系统字符集环境。在低于 5.2.6 版本的 PHP 中,可利⽤该函数修改系统字符集环境后,利⽤ sendmail 指令发送特殊参数执⾏系统 SHELL 命令。 危险等级:⾼
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论