php 参数配置,PHP安全相关配置参数

本文详细介绍了PHP配置文件php.ini中的几个重要安全设置,包括register_globals、allow_url_include、magic_quotes系列、safe_mode、open_basedir、disable_functions、display_errors和error_reporting。这些设置直接关乎系统安全,不当配置可能导致恶意代码执行、数据泄露等问题。建议在生产环境中谨慎调整这些选项,以确保服务器安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP配置文件php.ini

1、register_globals 注册全局变量

作用:

register_globals = on 时,GET,POST请求参数可以作为全局变量作用到整个系统

Php version <=4.2.3 存在

Php version 5.3.0 废弃

Php version 5.4.0 移除

4a0eb2863d9045e0b98ef8d677b241ba.png

演示:

1.php代码

9caf20422293c27e85150a00fa7699f3.png

760bbda1ece858d167d7e264e4c55e07.png

2、allow_url_include 包含远程文件

作用:

allow_url_include = on 时,可以直接包含远程文件,运行远程部署服务器恶意代码和脚本

php version 5.2.0后默认为off

7446066a73485308c693b5c5c1ca37d6.png

演示:

2.php代码

dc43c1a58cdb0e4e1e02cacc7f038594.png

test.txt内容是调用phpinfo()函数

86a4bc851f779c359860422fd27c457e.png

此时allow_url_include = off,调用http本地引用也会报错

0b6d65ab38c816127ac71d15182e43e3.png

设置 allow_url_include = on

6d07873febcc5d521b763b5d066ee897.png

此时调用远程机器文件就不会报错,以baidu.com/robots.txt文件为例

53576785824078cd158e5863e74f0906.png

3、magic_quotes_gpc 魔术引号过滤

作用:

自动过滤GET,POST,Cookie中的英文单引号’,双引号”,反斜杠\,空字符NULL,转义其字符在前边加上个反斜杠\

但是php 5中不会过滤$_SERVER变量,造成client-ip,referer等漏洞利用

php version 5.3  不推荐使用

php version 5.4 取消

2cb731ac554dec839037221669d4e8ce.png

演示:

3.php代码

3636309d0c9a8bf9abb578c5bd092a14.png

gpc = off,参数没有转义

4ed78fe03f8277f4f201bdb8bf5e4d6c.png

gpc = on,参数被转义

c42d7dd6628deef20036eb2e0e11ae93.png

4、magic_quotes_runtime 魔术引号过滤

作用:

跟gpc类似,区别是对数据库或文件中参数进行转义,可以避免污染数据触发攻击

php version 5.4 取消

599b4b837d61a9f79cd252bef125f400.png

演示:

4.txt文件内容

2bcb124492b685c7c5d628a0bf3f096b.png

runtime = off,没有转义

a93b0caefb550084a0bbc99d4eacf1d5.png

runtime = on,开启转义

e9487b971d94658c098955a483ff3c55.png

5、magic_quotes_sybase 魔术引号过滤

作用:

跟gpc类似,区别在转义单引号时变为两个单引号

php version 5.4 取消

ce55d5bb75e77095b0f08253743e8ab7.png

演示:

5.php

8940d8945f181a2bc87ab34bbdd44059.png

sybase发挥作用需要gpc和sybase同时为on,单引号被过滤为两个单引号

fa11aa8ca09f95d4523e256e52e09797.png

如果gpc = off,则不会产生过滤效果

6662ca735496d4be522cc39e268416cc.png

6、safe_mode 安全模式

作用:

(1)文件操作,如file(),include(),unlink()等,引用外部文件,使用safe_mode_include_dir配置可包含路径

(2)执行函数,如popen(),system(),exec()等,引用外部脚本,使用safe_mode_exec_dir配置脚本目录

435f0c4dc1ad44011f731b27ecc379be.png

演示:

6.php源码以及执行效果,此时safe_mode = off

68c50f073d826dccb7926f2fa243a869.png

当safe_mode = on ,执行会出错

d423a6710fb1e9a22c199e656475d7d4.png

7、open_basedir 可访问目录

作用:

规定可以访问的目录路径,使用分号;连接

12e3aa90353968dfc5ff577aa406f4b2.png

例如:open_basedir = /www/a;/www/b;

注意,路径/www/a是前缀匹配,则 /www/a/和/www/ab/都是正确匹配的,可以改为 /www/a/来明确某个目录

8、disable_functions 禁用函数

作用:

禁止某些敏感函数执行

ecfe890dacfdcca22a9aeae2b069d307.png

演示:

disable_functions = system,phpinfo,eval

9、display_errors  error_reporting 错误回显

作用:

设定PHP错误回显级别,方便调试,上线时尽量关闭

db339a0cb85b88441cc284f073a283f7.png

87c904b6c0e39592f0268bd1f0ca545a.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值