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

Day108:代码审计-PHP模型开发篇MVC层动态调试未授权脆弱鉴权未引用错误逻辑

目录

案例1-Xhcms-动态调试-脆弱的鉴权逻辑

案例2-Cwcms-动态调试-未引用鉴权逻辑

案例3-Bosscms-动态调试-不严谨的鉴权逻辑


知识点:

1、PHP审计-动态调试-未授权安全

2、PHP审计-文件对比-未授权安全

3、PHP审计-未授权访问-三种形态

动态调试优点:

环境配置:https://mp.weixin.qq.com/s/7K8edea8imalZ8_jJp3ODw

  1. 实时跟踪代码执行流程
  2. 实时获取变量接受数据
  3. 实时分析指定文件动态

未授权安全挖掘问题

  1. 找鉴权看引用-未引用鉴权逻辑,没有鉴权
  2. 找鉴权看脆弱-脆弱的鉴权逻辑,鉴权逻辑可绕过
  3. 找鉴权看逻辑-不严谨的鉴权逻辑
    1. 先功能操作,再鉴权,逻辑错误
    2. 先验证鉴权(成功进入功能操作,失败就让其重新鉴权),后功能操作

鉴权,没有exit(),就是第二种情况

案例1-Xhcms-动态调试-脆弱的鉴权逻辑

测试:直接在操作功能下断点发包测试(已登录)

找到鉴权文件进行代码分析(能绕过和不能绕过)

配置动态分析的环境 

与 php.ini 对应

前两个不用管

开始分析 

newz.php 是后台功能文件

通过包含文件,发现鉴权的逻辑

下断点,开始调试

查看被包含的文件

这样就分析到哪个文件是用来鉴权的,在Cookie里给User一个值即可绕过鉴权

案例2-Cwcms-动态调试-未引用鉴权逻辑

测试:直接在操作功能下断点发包测试(未登录)

断点获取到说明执行有未授权,获取不到没执行没未授权

重复上面的方法,找到鉴权的文件

发现该文件未包含

尝试访问

通过找到鉴权文件,看谁没引用就有问题

直接下断点到功能文件,直接执行功能那就有问题

案例3-Bosscms-动态调试-不严谨的鉴权逻辑

https://www.cnvd.org.cn/flaw/show/CNVD-2022-19247

1、文件对比找入口

鉴权文件:

/system/basic/class/admin.class.php

功能文件:

/system/admin/safe/backup.class.php

判断未登录时通过header进行页面跳转,

但是没有exit()或者die()终止程序运行

2、动态调试未授权操作

直接在操作功能下断点发包测试(已登录和未登录)

断点获取到说明执行有未授权,获取不到没执行没未授权

1.1版本-只判断是不是文件,鉴权跳转

1.3版本-判断文件外加匹配文件名,鉴权跳转加验证

不存在前两种情况

鉴权完后,没有退出,也就是后面代码仍然可以执行

尝试删除文件

文件删除成功!

相关文章:

Day108:代码审计-PHP模型开发篇MVC层动态调试未授权脆弱鉴权未引用错误逻辑

目录 案例1-Xhcms-动态调试-脆弱的鉴权逻辑 案例2-Cwcms-动态调试-未引用鉴权逻辑 案例3-Bosscms-动态调试-不严谨的鉴权逻辑 知识点: 1、PHP审计-动态调试-未授权安全 2、PHP审计-文件对比-未授权安全 3、PHP审计-未授权访问-三种形态 动态调试优点: 环境配置&…...

重读Java设计模式: 桥接模式详解

引言 在软件开发中,经常会遇到需要在抽象与实现之间建立连接的情况。当系统需要支持多个维度的变化时,使用传统的继承方式往往会导致类爆炸和耦合度增加的问题。为了解决这一问题,我们可以使用桥接模式。桥接模式是一种结构型设计模式&#…...

新规解读 | 被网信办豁免数据出境申报义务的企业,还需要做什么?

为了促进数据依法有序自由流动,激发数据要素价值,扩大高水平对外开放,《促进和规范数据跨境流动规定》(以下简称《规定》)对数据出境安全评估、个人信息出境标准合同、个人信息保护认证等数据出境制度作出优化调整。 …...

fakebook-攻防世界

题目 先目录扫描一下 dirseach 打开flag.php是空白的 访问robots.txt,访问user.php.bak <?php class UserInfo { public $name ""; public $age 0; public $blog ""; public function __construct($name, $age, $blog) { …...

mynet开源库

1.介绍 个人实现的c开源网络库&#xff0e; 2.软件架构 1.结构图 2.基于event的自动分发机制 3.多优先级分发队列&#xff0c;延迟分发队列 内部event服务于通知机制的优先级为0&#xff0c;外部event优先级为1&#xff0e; 当集中处理分发的event_callback时&#xff0c…...

深度挖掘商品信息,jd.item_get API助您呈现商品全面规格参数

深度挖掘商品信息&#xff0c;特别是在电商平台上&#xff0c;对于商家、开发者和用户来说都至关重要。jd.item_get API作为京东开放平台提供的一个强大工具&#xff0c;能够帮助用户轻松获取商品的全面规格参数&#xff0c;进而为商品分析、推荐、比较等提供有力的数据支撑。 …...

A Random Walk Based Anonymous Peer-to-Peer

一、 背景 匿名性一直是P2P系统等自组织环境中最具挑战性的问题之一。在本文中,我们提出了一个匿名协议,称为基于随机漫步的匿名协议(RWAP),在分散的P2P系统。我们通过全面的轨迹驱动模拟来评估RWAP。结果表明,与现有方法相比,RWAP显著降低了流量成本和加密开销。 二、 …...

php代码执行计划任务dos实现方式和宝塔面板实现方式

dos php 计划任务 echo off :loop echo 这是一个死循环 echo This is an infinite loop. php think gpt php think ai timeout /t 2 goto loop 宝塔面板 php 计划任务 #!/bin/bash PATH/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH ste…...

千万不要错过这6款能让你快速写作成长的宝藏软件…… #学习方法#AI写作

国外ChatGPT爆火&#xff0c;AI写作在国内也引起不小的瞩目&#xff0c;目前国内的AI写作工具少说也有几十上百个&#xff0c;要在这么多AI写作中找出适合自己的工具&#xff0c;一个一个尝试是不太现实的&#xff0c;所以今天就给大家推荐一些款AI写作工具。帮助你少走弯路&am…...

TypeScript系列之-理解TypeScript类型系统画图讲解

TypeScript的输入输出 如果我们把 Typescript 编译器看成一个黑盒的话。其输入则是使用 TypeScript 语法书写的文本或者文本集合。 输出是编译之后的 JS 文件 和 .d.ts 的声明文件 其中 JS 是将来需要运行的文件(里面是没有ts语法&#xff0c;有一个类型擦除的操作)&#xff0…...

制造业智能化一体式I/O模块的集成与应用案例分享

在现代制造业中&#xff0c;智能化一体式I/O模块的应用已经成为提升生产效率、优化工艺流程的关键技术之一。这种一体化I/O模块的主要功能在于作为PLC&#xff08;可编程逻辑控制器&#xff09;系统的扩展接口&#xff0c;以满足多样化的输入输出需求。本文将通过一个实际案例&…...

《云原生安全攻防》-- 云原生应用风险分析

为了满足每位朋友的学习需求&#xff0c;并且支持课程的持续更新&#xff0c;本系列课程提供了免费版和付费视频版两种方式来提供课程内容。我们会持续更新课程内容&#xff0c;以确保内容的度和实用性。 在本节课程中&#xff0c;我们将一起探讨云原生应用在新的架构模式下可能…...

抖音-引流私域转化模式1.0现场视频,从抖音源源不断把人加到私域,

抖音-引流私域转化模式1.0现场视频&#xff0c;从抖音源源不断把人加到私域&#xff0c;让加到私域的粉丝买单 抖音-引流私域转化模式1.0现场视频&#xff0c;从抖音源源不断把人加到私域 - 百创网-源码交易平台_网站源码_商城源码_小程序源码 课程内容&#xff1a; 01.第一…...

外包干了6天,技术明显进步

先说一下自己的情况&#xff0c;本科生&#xff0c;2019年我通过校招踏入了南京一家软件公司&#xff0c;开始了我的职业生涯。那时的我&#xff0c;满怀热血和憧憬&#xff0c;期待着在这个行业中闯出一片天地。然而&#xff0c;随着时间的推移&#xff0c;我发现自己逐渐陷入…...

上传应用程序到苹果应用商店的工具和要

引言 在今天的移动应用市场中&#xff0c;将应用程序上传到苹果应用商店&#xff08;App Store&#xff09;是许多开发者的首要任务之一。然而&#xff0c;不同操作系统下的开发者可能需要使用不同的工具和遵循不同的要求来完成这一任务。本文将介绍在 macOS、Windows 和 Linu…...

vue:判断当前日期时间是否在一个日期时间区间里

在前端&#xff0c;可以使用 JavaScript 的 Date 对象来判断当前日期时间是否在一个日期时间区间内。 // 定义开始时间和结束时间 const startTime new Date(2024-03-29T08:00:00); // 开始时间 const endTime new Date(2024-04-02T18:00:00); // 结束时间// 获取当前时间 c…...

浏览器禁用cookie后session还能用吗?

1.背景 最近有朋友问我其面试时遇到的一个不常见的问题&#xff1a;浏览器禁用cookie后session还能用吗&#xff1f;&#xff0c;怎么解答。 2.cookie与session联系入手 2.1 理论基础 一般默认情况下&#xff0c;在会话中&#xff0c;服务器存储 session 的 sessionid &…...

C语言——顺序表

文章目录 一、线性表二、顺序表顺序表和数组的区别顺序表的分类1.静态顺序表2.动态顺序表 三、动态顺序表的实现1.动态顺序表头文件2.动态顺序表源文件3.测试源文件 一、线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。线性表是⼀种…...

CentOS7安装Docker及禅道

https://blog.csdn.net/weixin_46453070/article/details/136183615?ops_request_misc%257B%2522request%255Fid%2522%253A%2522171246925816800222886233%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id171246925816800222886233&biz_i…...

如何在社交媒体中使用增强现实来提高客户参与度?

目录 1. 增强现实在社交媒体中的应用是如何发展的 2. 社交媒体营销和广告中的增强现实 3. 社交媒体上的增强现实滤镜和镜头 4. 社交媒体平台上的增强现实购物 5. 利用社交媒体的增强现实事件和品牌激活 6. 增强现实在社交媒体中的未来是什么 7. 社交媒体中的增强现实常见…...

从HAL_Delay到精准定时:STM32 HAL库中微秒与毫秒延时方案的深度解析与实战

1. HAL库延时函数的基本原理与局限性 在STM32开发中&#xff0c;HAL_Delay()可能是我们最早接触的延时函数。这个看似简单的函数背后&#xff0c;其实隐藏着精妙的系统设计。HAL库默认使用SysTick定时器来实现毫秒级延时&#xff0c;每次调用HAL_Delay()时&#xff0c;实际上是…...

VS2015+C++实战:手把手教你用海康MVS里的Demo搞定多相机同步采图与保存

VS2015C实战&#xff1a;海康MVS工业相机多机同步采图全流程解析 工业视觉检测系统中&#xff0c;多相机同步采图是个经典需求。上周帮朋友调试8台海康威视相机组成的检测线时&#xff0c;发现网上完整案例实在太少。今天我就以VS2015开发环境为例&#xff0c;带大家深入MVS安装…...

手把手教你用PassFab for Office 8.5.1找回遗忘的Word/Excel密码(保姆级图文教程)

办公文档密码遗忘急救指南&#xff1a;PassFab for Office全流程实战解析 你是否经历过这样的场景&#xff1a;周一早晨准备修改季度报表时&#xff0c;突然发现去年设置的Excel密码怎么试都不对&#xff1b;或是毕业论文答辩前夜&#xff0c;重要参考文献的Word文档因密码错误…...

iOS 15+ 设备越狱实战指南:A8-A11 芯片全流程适配方案

iOS 15 设备越狱实战指南&#xff1a;A8-A11 芯片全流程适配方案 【免费下载链接】palera1n Jailbreak for A8 through A11, T2 devices, on iOS/iPadOS/tvOS 15.0, bridgeOS 5.0 and higher. 项目地址: https://gitcode.com/GitHub_Trending/pa/palera1n 一、问题诊断&…...

Movie_Recommend系统架构解析:从数据采集到推荐展示

Movie_Recommend系统架构解析&#xff1a;从数据采集到推荐展示 【免费下载链接】Movie_Recommend 基于Spark的电影推荐系统&#xff0c;包含爬虫项目、web网站、后台管理系统以及spark推荐系统 项目地址: https://gitcode.com/gh_mirrors/mo/Movie_Recommend Movie_Rec…...

【MobaXterm进阶】SSH连接稳定性优化:Keepalive与超时设置详解

1. 为什么SSH连接会频繁断开&#xff1f; 很多朋友在用MobaXterm远程连接服务器时都遇到过这样的困扰&#xff1a;明明连接得好好的&#xff0c;过一会儿就莫名其妙断开了。特别是当你正在执行一个耗时较长的任务时&#xff0c;突然中断简直让人抓狂。这种情况在家庭版用户中尤…...

突破QQ音乐格式限制:QMCFLAC2MP3的音乐自由解决方案

突破QQ音乐格式限制&#xff1a;QMCFLAC2MP3的音乐自由解决方案 【免费下载链接】qmcflac2mp3 直接将qmcflac文件转换成mp3文件&#xff0c;突破QQ音乐的格式限制 项目地址: https://gitcode.com/gh_mirrors/qm/qmcflac2mp3 QMCFLAC2MP3是一款专为破解QQ音乐格式限制设计…...

全志Tiger-ISP调试工具安装与使用全攻略

1. 全志Tiger-ISP调试工具入门指南 第一次接触全志Tiger-ISP调试工具时&#xff0c;我也是一头雾水。这个工具主要用于图像信号处理器(ISP)的调试和优化&#xff0c;是开发智能摄像头、行车记录仪等视觉设备的必备利器。简单来说&#xff0c;它能让你像调色师一样精细调整图像的…...

解决图像修复与纹理合成难题的Resynthesizer:开源智能填充工具全指南

解决图像修复与纹理合成难题的Resynthesizer&#xff1a;开源智能填充工具全指南 【免费下载链接】resynthesizer Suite of gimp plugins for texture synthesis 项目地址: https://gitcode.com/gh_mirrors/re/resynthesizer 在数字图像处理领域&#xff0c;我们经常面临…...

SpringAI实践(07) - 本地向量嵌入模型集成指南

SpringAI实践&#xff08;07&#xff09; - 本地向量嵌入模型集成指南 1.概述 本文档详细说明如何在 SpringBoot 应用中集成本地部署的 ONNX 格式向量嵌入模型&#xff08;如 bge-small-zh&#xff09;&#xff0c;通过 spring-ai-starter-model-transformers 模块调用 ONNX …...