0x01 前言

一天一个朋友发我一个通用漏洞验收及奖励标准
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图1
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图2

看着还可以,一顿突突以后,准备提交的时候发现!!!!!
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图3
嗯。问题不大 : )

一直以来都很少看到有比较完整的cms审计过程,所以特地记录一下自己的审计过程,希望后后入门审计的人可以少走点弯路,找到自己的审计方式。

注意:文章可能会字很多很烦,因为你可以看到我一直在哪里BBBBBB。
最后希望此文章可以帮助到想学习的人 ( ゚∀゚) ノ♡

0x02 安装系统

这个系统很方便默认情况下,直接下载下来什么都不用做即可使用。
但是系统默认是使用 sqlite 的,我不喜欢 ╮(╯▽╰)╭

数据库配置文件路径:PbootCMS-V1.2.1\config\database.php
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图4

这里我修改为mysql 数据库来跑
数据库配置文件路径:PbootCMS-V1.2.1\config\database.php
数据库sql保存路径:PbootCMS-V1.2.1\static\backup\sql\20180720164810_pbootcms.sql
然后自己创建个数据库导入即可如图
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图5
然后重新打开网站即可
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图6
后台默认账户密码
账户:admin
密码:123456

剩下的可以查看帮助手册:PbootCMS-V1.2.1\doc\help.chm

0x03 查看网站目录结构确定基本内容

  1. PbootCMS-V1.2.1
  2. ├─ apps 应用程序
  3. ├─ admin 后台模块
  4. ├─ api api模块
  5. ├─ common 公共模块
  6. ├─ home 前台模块
  7. ├─ config 配置文件
  8. ├─ config.php 配置文件
  9. ├─ database.php 数据库配置文件
  10. ├─ route.php 用户自定义路由规则
  11. ├─ core 框架核心
  12. ├─ function 框架公共函数库
  13. ├─ handle.php 助手函数库1
  14. ├─ helper.php 助手函数库2
  15. ├─ template html模板
  16. ├─ admin.php 管理端入口文件
  17. ├─ api.php api入口文件
  18. ├─ index.php 前端入口文件

这里我把一些重要的地方列了出来,在初步审计的时候,可以快速了解系统

0x04 确定路由走向

经过初步的查看,可以得出路由走向。

一种是自定义路由,还有一种是mvc的路由

0x04.1 必须自定义路由才能访问的类

查看路由文件:PbootCMS-V1.2.1\apps\common\route.php
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图7
例如:
http://127.0.0.1/cms/PbootCMS-V1.2.1/index.php/about/1

因为他的这个文件在系统的自定义路由上所以上面的路由解析以后就是

路由:about/1 = home/about/index/scode

文件:PbootCMS-V1.2.1\apps\home\controller\AboutController.php
方法:index
参数:scode

那个 home 是由 对应的入口文件,例如文中的index.php中的URL_BLIND
PbootCMS漏洞合集之审计全过程之一-网站基本架构 - 图8

0x04.2 普通的mvc地址

对于不在自定义路由中的就可以按照普通的mvc模式来访问了

例如:
http://127.0.0.1/cms/PbootCMS-V1.2.1/index.php/Message/add

路径:apps\home\controller\MessageController.php
方法:add