文章目录
前言
若依是一套全部开源的快速开发平台,在日常工作中也会遇到很多若依搭建的网站,或者基于若依二开的网站,因为是以学习为目的,所以选择低版本下载,未选择最高版本,本文搭建版本是4.6.0版本,源码可以访问链接下载:https://gitee.com/y_project/RuoYi/releases。
一、本地项目部署
1)项目下载完解压后为下图所示:

2)因为该框架采用了SpringBoot,所以只需要导入数据库即可。本文项目使用phpstudy开启mysql5。

3)连接数据库。

4)创建ruoyi数据库并使用。

5)将sql文件夹中的quartz.sql和ry_20201214.sql两个文件导入到ruoyi数据库中,注意使用正斜杠。


6)使用IDEA打开若依系统,等待Maven自动加载依赖项,如果pom.xml文件有报错,依赖未成功安装,可如下图查看maven配置如何,可能是没有配置好maven环境。

7)项目结构如下所示:

8)若依模块简述。
| 模块名称 | 简述 |
|---|---|
| ruoyi-admin | 启动模块,启动配置在resource的yml下 |
| ruoyi-framework | 主题框架模块,框架怎么运行的仔细看看,这个是核心重点 |
| ruoyi-system | 业务模块,几乎所有业务都在这里 |
| ruoyi-quartz | 定时任务模块,跑的定时任务基本都在这里 |
| ruoyi-generator | 基础公共表的操作,相当于基础表和基础业务存放位置 |
| ruoyi-common | 公共代码模块,list转set什么的一般放这里,自己不要瞎写方法,公共的都放这里 |
9)配置若依系统。

10)在application.yml中路径可自己修改,端口也是可以修改,嫌麻烦默认也可以。

11)在application-druid.yml中配置数据库账号密码还有把3306后边的 ry 改成 ruoyi,因为刚刚创建数据库的名字是ruoyi。

12)启动项目。

13)访问项目,本文项目地址为:http://127.0.0.1:25001/login,若依系统的账号密码为:admin/admin123 或 ry/admin123,若依系统默认是记住账号口令,所以搭建完成时最好记得删除,否则可能就会有人报漏洞了!!!

二、漏洞挖掘
1.整理思路
由于是菜鸟,所以目前对采用sprintboot框架审计的思路是,先看pom.xml文件看看是否存在有漏洞的组件,然后可以再去系统的功能点做黑盒测试,在看代码片段。
2.shiro反序列化漏洞
1)发现shiro组件,shiro常见的两个漏洞:一个是默认秘钥,一个是权限绕过。
AES秘钥在1.2.4版本及之前版本是硬编码在代码里的,可以通过GitHub开源的shiro代码获取AES密钥。1.2.5版本以后shiro提供了AES密钥的随机生成代码,但是如果仅进行shiro的版本升级,AES密钥仍硬编码在代码中,仍然会存在反序列化风险。

最低0.47元/天 解锁文章
9248

被折叠的 条评论
为什么被折叠?



