当前位置: 首页 > news >正文

WEB开发-第二十七天(PHP篇)

DW + PHPStorm + PhpStudy + Navicat Premium

DW : HTML&JS&CSS开发

PHPStorm : 专业PHP开发IDE

PhpStudy :Apache MYSQL环境

Navicat Premium: 全能数据库管理工

变量覆盖安全:

$GLOBALS:这种全局变量用于在PHP脚本中的任意位置访问全局变量

用这个($GLOBALS)声明的变量 可以在全局中使用,“.”是连接符号,sum函数中初始化并赋值了一个全局变量z,在函数外也可以对其进行访问; 而sum1函数中的变量都报错,函数内调用不了函数外的变量,函数内的变量只对函数内起作用,所以输出h时会报错,报a,b,h 都未定义

数据接收安全:

$REQUEST:$REQUEST 用于收集 HTML 表单提交的数据。

$_POST:广泛用于收集提交method="post" 的HTML表单后的表单数据。

$_GET:收集URL中的发送的数据。也可用于提交表单数据(method="get")

REQUEST 接受POST 和 GET 请求

z值只接受POST请求,这里是GET请求,所以z无效; GET请求的参数写在网址后,? 用于分隔URL 和参数,而 & 用于分隔多个参数

当改成POST请求时,用HackBar 插件或者用Postman

HackBar 插件

将网址复制到下面的框中,然后点击post data ,将post提交的参数写上去 ,最后点击 execute

这里请求就变成了post请求了

Postman

$_ENV:是一个包含服务器端环境变量的数组。

因为这里没弄服务器所以演示不了

变量值含义

$_SERVER:这种超全局变量保存关于报头、路径和脚本位置的信息。

变量值含义

文件上传安全:

$_FILES:文件上传且处理包含通过POST方法上传给当前脚本的文件内容。

网上找一个php文件上传脚本,复制进去,将action留空(提交给自己处理),然后选择一个文件提交上去

 

可以用burp 拦截数据包然后修改后放出

身份验证安全:

$_COOKIE:是一个关联数组,包含通过cookie传递给当前脚本的内容。

本地客户端浏览器存储cookie值

第一次访问时没有cookie

第二次就出现了

$_SESSION:是一个关联数组,包含当前脚本中的所有session内容。

目标服务端存储,存储记录的数据

设置session值为xd

这里会在服务端生成一个值,关掉浏览器在打开去访问时,又会生成一个新的值

演示:

1、DuomiCMS变量覆盖

找变量覆盖代码->找此文件调用->

选择利用覆盖Session->找开启Session文件覆盖

先用phpstudy搭建一个网站,将源码放进根目录中, php版本选择5.5 ,MySQL选5.7 ,不然会安装了,网站搭不起来

找到这段代码,查找那个文件调用了这个代码的文件,

这里判断groupid值 为1时时管理员

通过两段代码结合

 因为时session验证,所以要有session_start(); 函数 并且要引用包含foreach的脚本文件

输入:

http://192.168.0.101:90/interface/comment.php?_SESSION[duomi_admin_id]=10&SESSION[duomi_group_id]=1&SESSION[duomi_admin_name]=zmh

访问管理员登录页面 : 实现不输入账号密码成为管理员

http://www.lryc.cn/news/612659.html

相关文章:

  • 笔试——Day31
  • Linux(17)——Linux进程信号(下)
  • 【42】【OpenCV C++】 计算图像某一列像素方差 或 某一行像素的方差;
  • uniapp vue3中使用pinia 和 pinia持久化(没有使用ts)
  • SQLite 创建表
  • VUE+SPRINGBOOT从0-1打造前后端-前后台系统-文章列表
  • [失败记录] 使用HBuilderX创建的uniapp vue3项目添加tailwindcss3的完整过程
  • 《深入浅出 Django ORM:设计理念与惰性查询实现详解》
  • Django 表单:深度解析与最佳实践
  • 上门家教 app 用户端系统模块设计
  • 解锁高效开发:AWS 前端 Web 与移动应用解决方案详解
  • 深度解析:打造一个文件、可持续的Python网络爬虫——以澳洲房地产网站为例
  • uni-app vue3 小程序接入 aliyun-rtc-wx-sdk
  • 深拷贝之 structuredClone ()
  • JavaSE---异常的经典面试题
  • SUNO音乐歌曲生成平台的关键字指令
  • 内网穿透原理和部署教程
  • [激光原理与应用-171]:测量仪器 - 能量型 - 激光能量计(单脉冲能量测量)
  • YOLOv8面试知识
  • Spring事务失效场景?
  • 【基础知识】springboot+vue 基础框架搭建(更新中)
  • 下载 | Windows Server 2016最新原版ISO映像!(集成7月更新、标准版、数据中心版、14393.8246)
  • MacOS Docker 安装指南
  • 进程、网络通信方法
  • 在Linux下访问MS SQL Server数据库
  • 机器学习工程化 3.0:从“实验科学”到“持续交付”的 7 个关卡
  • 【2025最新】在 macOS 上构建 Flutter iOS 应用
  • 函数、方法和计算属性
  • 「iOS」————持久化
  • HashMap寻址算法