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

第27天:Web开发-PHP应用原生语法全局变量数据接受身份验证变量覆盖任意上传

#知识点:

1、安全开发-原生PHP-超级全局变量

2、安全开发-原生PHP-代码审计案例

一、web开发工具使用

DW + PHPStorm + PhpStudy + Navicat Premium

DW : HTML&JS&CSS开发

PHPStorm : 专业PHP开发IDE

PhpStudy :Apache MYSQL环境

Navicat Premium: 全能数据库管理工具

参考:https://tutorials.wcode.net/php

二、变量覆盖安全:

1、$GLOBALS:这种全局变量用于在PHP脚本中的任意位置 访问全局变量->变量覆盖安全问题

2、数据接收安全:(Postman专业发包工具使用)

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

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

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

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

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

3、文件上传安全:

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

4、身份验证安全:

$_COOKIE:是一个关联数组,包含通过cookie传递给当前脚本的内容。本地客户端浏览器存储

$_SESSION:是一个关联数组,包含当前脚本中的所有session内容。目标服务端存储,存储记录的数据

三、代码审计应用(漏洞复现案例)

1、DuomiCMS变量覆盖->在不知道账密的情况下进入后台

找变量覆盖代码->找此文件调用->选择利用覆盖Session->找开启Session文件覆盖

参考:https://blog.csdn.net/qq_59023242/article/details/135080259

①变量覆盖漏洞利用

/interface/comment.php?_SESSION[duomi_admin_id]=10&_SESSION[duomi_group_id]=1&_SESSION[duomi_admin_name]=zmh

②无账密登录

2、YcCms任意文件上传

找文件上传代码->找此文件调用->找函数调用->过滤type用mime绕过

参考:https://zhuanlan.zhihu.com/p/718742254

?a=call&m=upLoad send


http://www.kler.cn/a/469443.html

相关文章:

  • 新的Python库、项目管理工具——uv
  • 改进萤火虫算法之一:离散萤火虫算法(Discrete Firefly Algorithm, DFA)
  • 2024.1.5总结
  • C语言 扫雷程序设计
  • GPT系统重大升级,开创国内先河:o1支持图片识别功能正式上线
  • 百度Android最新150道面试题及参考答案 (中)
  • 谷歌浏览器的安全检测工具使用指南
  • 开源复刻 | Matlab实现蚁狮优化算法ALO优化Transformer-LSTM实现负荷数据回归预测
  • Sql中WITH的作用
  • pygame飞机大战
  • SpringMVC(二)原理
  • 【QT】C++线程安全的单例模板
  • Docker容器中Elasticsearch内存不足问题排查与解决方案
  • 【车载网络】BUSOFF状态简述和制造
  • Go语言的 的输入/输出流(I/O Streams)核心知识
  • LeetCode:700.二叉搜索树中的搜索
  • ThreadLocal` 的工作原理
  • Apache zookeeper集群搭建
  • Java-数据结构-时间和空间复杂度
  • Python 标准库:hashlib——安全哈希与消息摘要
  • ARM CCA机密计算安全模型之加密建议
  • 26 go语言(golang) - GC原理
  • 系统架构师考试-MDA模型驱动架构
  • Mac 版本向日葵退出登录账号
  • Electron快速入门——跨平台桌面端应用开发框架
  • 嵌入式linux中socket控制与实现