网站的推广是怎么做的,收费电影网站怎么做,青岛专业网站排名推广,wordpress添加百度地图吗简介
BossCMS是一款基于自主研发PHP框架MySQL架构的内容管理系统#xff0c;能够满足各类网站开发建设的需求。系统开源、安全、稳定、简洁、易开发、专注为中小型企业及政企单位、个人站长、广大开发者、建站公司提供一套简单好用的网站内容管理系统解决方案。官网提供了大量…简介
BossCMS是一款基于自主研发PHP框架MySQL架构的内容管理系统能够满足各类网站开发建设的需求。系统开源、安全、稳定、简洁、易开发、专注为中小型企业及政企单位、个人站长、广大开发者、建站公司提供一套简单好用的网站内容管理系统解决方案。官网提供了大量的网站模板可以让您不需要任何的专业技术就能轻松搭建您的网站易操作、易上手、快捷方便的后台操作让您10分钟就会建立自己的网站。
工具准备
工具版本mysqlV5.7.26phpV5.6.9seay源代码审计系统V2.1phpstormV2021.3phpstudy_proV8.1.1.3
路由分析
认识bosscms
打开cms目录后我们先去简单阅读一下BOSScms的README.md看看设计者的对于自己的介绍搜 集点信息看看注意事项作者也是很nice都录制了视频。 寻找路由
这里打开cms目录后会有几个我们需要关注的目录首先是admin目录这里可能就是后台功能目录install目录是安装cms的功能目录配置数据库文件、初始化cms功能等upload目录为上传文件存储目录。 我们直接进入根目录下的index.php看看会有什么发现这里定义了四个常量和一个利用文件包含 system目录下的enter文件我们跟进去看看enter文件。 这里enter文件设置了一下请求头内容、时区、一些常量在最后继续进行文件包含into.class.php 文件调用into文件中的load()方法我们继续跟进。 这里self了一下我们看看self方法的定义就是调用本类中的静态方法和属性也可以访问父类的。这里就是返回一下调用本类下的load_class()方法那我们继续跟进一下。 这里该load_class()方法需要四个参数我们先来进去第一个if逻辑判断一下$type类型因为初始赋值 为null直接进入判断if逻辑这里涉及前后台功能调用如果是IS_INSIDE是true进入system/admin目录功能如果是fales进入system/web目录功能。 这里简单的思考了一下为什么会做到前后台功能分开调用呢看了一下代码发现在admin/index.php存在常量IS_INSIDE为true如果是admin/index.php下的load下的类就会存在该常量自然做到了前后功能分离感觉这样设计思维真的很巧妙~ $func先检查一下是否在包含的类里面也就是$part里面就利用回调函数call_user_func(实现。 也就是我们路由分析下来就是需要传入的值为?moldpartfunc而通过分析我们发现mold值为system目录的下级目录而part为功能目录下的实现文件而func值为该实现文件的方法。通过输入admin验证一下猜想基本符合。 未授权漏洞
在登录后台的时候通过查看添加用户功能看能不能挖掘sql注入漏洞结果发现了个大问题一个比较好玩的权限逻辑问题。这里添加用户的路由
http://192.168.18.132/bosscms/admin/?moldmanagerpartmanagerfuncadd我们跟进到manager.class.php里面的add()方法这里先into::basc_class(admin)应该是load一个名字admin的类我们跟进去看看。 这里bassic_class()方法需要两个值两个值$name和一个$func,$func初始值为null在代码中给他复制一个固定值init感觉像是初始化之类的问题不大跟进去。 在admin.class.php里面的init()方法我以为是初始化类的结果是个判断权限就是判断获取到session如果是不存在的seesion就是空的然后进入if逻辑利用header进行跳转会登录页面。 可能大家还没发现问题这里没有做终止它在做完跳转后动作后继续进入add()方法进行添加用户。这里一个巧妙的帽子戏法导致了整个信息系统后台功能点存在未授权漏洞。
我们利用登录后的添加用户poc然后随便改个cookie来进行验证显示保存成功看来我们分析的没有错我们进行登录看看是否成功。 这里就要回归我们怎么getshell在后台功能中有个安全设置可以修改上传后缀然后找个上传点上传祖产大宝贝即可~