Maison > Article > développement back-end > Connaissez-vous les fonctions dangereuses de PHP ?
Parfois, nous devons désactiver certaines fonctions dangereuses en PHP pour des raisons de sécurité. Cet article a compilé quelques fonctions dangereuses en PHP pour votre référence.
函数 | 作用 | 建议 | 级别 |
---|---|---|---|
phpinfo | 输出 PHP 环境信息以及相关的模块、WEB 环境等信息。 | 禁用影响不大 | 中 |
passthru | 允许执行一个外部程序并回显输出 | 禁用影响不大 | 高 |
exec | 允许执行一个外部程序(如 UNIX Shell 或 CMD 命令等) | 禁用影响不大 | 高 |
system | 允许执行一个外部程序并回显输出 | 禁用影响不大 | 高 |
chroot | 可改变当前 PHP 进程的工作根目录,仅当系统支持 CLI 模式 | 禁用影响不大 | 高 |
scandir | 列出指定路径中的文件和目录。 | 有可能受影响 | 中 |
chgrp | 改变文件或目录所属的用户组。 | 禁用影响不大 | 高 |
chown | 改变文件或目录的所有者 | 禁用影响不大 | 高 |
shell_exec | 通过 Shell 执行命令,并将执行结果作为字符串返回。 | 禁用影响不大 | 高 |
proc_open | 执行一个命令并打开文件指针用于读取以及写入。 | 禁用有可能没法执行定时任务 | 高 |
proc_get_status | 获取使用 proc_open () 所打开进程的信息。 | 禁用有可能没法执行定时任务 | 高 |
ini_alter、ini_set | 可用于修改、设置 PHP 环境配置参数。 | 禁用影响不大 | 高 |
ini_restore | 可用于恢复 PHP 环境配置参数到其初始值。 | 禁用影响不大 | 高 |
dl | 在 PHP 进行运行过程当中(而非启动时)加载一个 PHP 外部模块 | 禁用影响不大 | 高 |
pfsockopen | 建立一个 Internet 或 UNIX 域的 socket 持久连接 | 禁用可能会影响 RPC、Socket 通信等 | 高 |
syslog | 可调用 UNIX 系统的系统层 syslog () 函数 | 禁用影响不大 | 中 |
readlink | 返回符号连接指向的目标文件内容 | 禁用影响不大 | 中 |
symlink | 创建软链接 | 禁用影响不大 | 中 |
popen | 可通过 popen () 的参数传递一条命令,并对 popen () 所打开的文件进行执行 | 禁用影响不大 | 高 |
stream_socket_server | 建立一个 Internet 或 UNIX 服务器连接 | 禁用可能会影响 RPC、Socket 通信等 | 高 |
Remarque : Les résultats ci-dessus ne sont pas définitifs. Enfin, il est nécessaire de regrouper l'entreprise et d'analyser son impact sur l'entreprise. Voici comment le désactiver.
Ouvrez php.ini, recherchez Disable_functions et ajoutez-le.
disable_functions = passthru,exec,system,chroot,chgrp,chown,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog, syslog,readlink,popepassthru,stream_socket_server
Tutoriel recommandé : "Tutoriel PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!