IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> 1.3 PHP核心配置详解 -> 正文阅读

[PHP知识库]1.3 PHP核心配置详解

1.3 PHP 核心配置详解

  1. 为什么说,在代码审计之前,必须要熟悉PHP各版本中配置文件的核心指令,才能更高效地挖掘到高质量的漏洞呢?

    • 代码在不同环境下执行的结果也会大有不同,可能就因为一个配置问题,导致一个非常高危的漏洞能够被利用。
    • 在不同的PHP版本中配置指令也有不一样的地方,新的版本可能会增加或者删除部分指令,改变默认设置或者固定设置指令。
  2. PHP官方配置说明:传送门

  3. PHP_INI_*常量的定义,参见表1-1:
    在这里插入图片描述

  4. PHP配置文件的指令多大数百项,这里只列出会影响 PHP 脚本安全配置列表以及核心配置选项

    • register_globals (全局变量注册开关)
    • allow_url_include (是否允许包含远程文件)
  5. register_globals (全局变量注册开关)

    (1)功能:register_gloabls (全局变量注册开关),该选项在设置为on的情况下,会直接把用户以GET、POST等方式提交上来的参数注册成全局变量并初始化值为其参数对应的值从而使提交的参数可以直接在脚本中使用。而Off的时候,我们需要到特定的数组里去得到GET、POST提交的参数值!!!

    (2)PHP版本小于4.2.3时,register_globals被设置为PHP_INI_ALL。

    (3)PHP版本>=5.3.0时,register_globals被废弃,不推荐使用。(还是可以手工设置为on)

    (4)PHP版本>=5.4.0时,移除了该选项。(不可以再设置为on了)如果强制设置该参数,则会报出以下信息:
    ????????????????????????????在这里插入图片描述

    (5)demo测试:当register_globals (全局变量注册开启) 设置为on且PHP版本小于5.4.0时,如下代码输出结果为true。
    在这里插入图片描述

    (6)上面的代码测试,如果register_globals处于off的状态,那么会报出以下信息:
    在这里插入图片描述

  6. allow_url_include (是否允许包含远程文件)

    (1)功能:这个配置指令/参数处于on的情况下,就允许用户直接包含远程文件。所以说,当存在include($var)$var可控的情况下,可以直接控制$var变量来执行PHP代码。

    (2)PHP版本>5.2.0时,allow_url_include 默认设置为off,其配置范围是PHP_INI_ALL。

    (3)PHP版本>=7.4.0时,被废弃,不推荐使用。

    (4)注意:allow_url_fopen (是否允许打开远程文件),默认处于on

    (5)很明显:allow_url_include 设置项必须要开启 allow_url_fopen ,否则打不开远程文件,包含有个什么用!!!

    (6)demo测试:配置allow_url_inlucde指令为on且待远程包含的文件内容为php探针的时候,如下代码输出结果:在这里插入图片描述
    (7)注意:文件包含的时候,这个包含的文件很有讲究,只要文件里的内是符合php语法规范的,无论是什么文件,就算文件名为zxcvbnm,也可被后台解析并执行,若文件里的内容不符合php语法规范,则原样打印输出到页面上!!!

    (8)如果allow_url_include是on的,而allow_url_fopen是off的,会报出以下等信息:
    ????????????????????????????在这里插入图片描述

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2022-01-16 12:49:24  更:2022-01-16 12:49:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/14 14:48:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码