知识点
1、PHP审计-动态调试-未授权安全
2、PHP审计-文件对比-未授权安全
3、PHP审计-未授权访问-三种形态
动态调试优点
1、实时跟踪代码执行流程
2、实时获取变量接受数据
3、实时分析指定文件动态
环境配置:https://blog.csdn.net/m0_60571842/article/details/133246064
未授权安全挖掘问题
1、找鉴权看引用-未引用鉴权逻辑
2、找鉴权看脆弱-脆弱的鉴权逻辑
3、找鉴权看逻辑-不严谨的鉴权逻辑
一、演示案例-PHP审计-Xhcms-动态调试-脆弱的鉴权逻辑
找到鉴权文件进行代码分析(能绕过和不能绕过)
静态分析
动态调试
二、演示案例-PHP审计-Cwcms-动态调试-未引用鉴权逻辑
测试:直接在操作功能下断点发包测试(未登录)
断点获取到说明执行有未授权,获取不到没执行没未授权
这里session
是没法操作的,不像cookie
是能自己添加的,就要看哪些后台文件没调用这个admin.php
文件,那么这个文件就可能存在未授权访问。
三、演示案例-PHP审计-Bosscms-动态调试-不严谨的鉴权逻辑
https://www.cnvd.org.cn/flaw/show/CNVD-2022-19247
静态分析
鉴权文件
/system/basic/class/admin.class.php
判断未登录时通过header
进行页面跳转,
但是没有exit()
或者die()
终止程序运行,导致代码仍然往下执行。
删除功能文件
/system/admin/safe/backup.class.php
动态调试未授权操作
直接在操作功能下断点发包测试(未登录)
断点获取到说明执行有未授权,获取不到没执行没未授权
文件对比
四、演示案例-PHP审计-泛微OA-未授权触发文件上传
https://www.cnvd.org.cn/flaw/show/CNVD-2021-49104
参考文章
https://xz.aliyun.com/t/10646
文件对比
把官方补丁和存在漏洞源码进行对比,发现这三个文件进行了更改。
/general/index/UploadFile.php
/inc/conn.php
/inc/oa_config.php