文章总结: 本文介绍了RuoYi-4.6.0的环境搭建与SQL注入代码审计。发现params.dataScope和{params.dataScope}和params.dataScope和{ancestors}参数存在注入风险,共筛选出14个sink点,涉及/system/role/list及/system/user/list等多个接口。文章列举了受影响路径并简要分析了漏洞原理,核心结论是部分数据权限参数存在安全风险。 综合评分: 72 文章分类: 代码审计,漏洞分析,WEB安全
RuoYi-4.6.0代码审计之SQL注入漏洞
安全艺术
安全艺术
2026年1月8日 17:08 北京
1. 环境搭建RuoYi-4.6.0
https://github.com/yangzongzhuan/RuoYi/releases
修改连接数据库的相关信息
RuoYi-4.6.0/ruoyi-admin/src/main/resources/application-druid.yml
将⽇志路径需改为相对路径 ./logs
RuoYi-4.6.0/ruoyi-admin/src/main/resources/logback.xml
将上传路径也修改为相对路径
RuoYi-4.6.0/ruoyi-admin/src/main/resources/application.xml
创建数据库
create database ry;
source D:\@CodeAudit\Code\RuoYi-4.6.0\sql\ry_20201214.sql
source D:\@CodeAudit\Code\RuoYi-4.6.0\sql\quartz.sql
启动
2. SQL注入
2.1. ${params.dataScope}
铲子一把梭
前端去抓数据包发现这个参数是隐藏的。
deptName=&status=
闭合下
筛选下,有14个sink点
2.1.1. /system/role/list
2.1.2. /system/role/export
2.1.3. /system/user/list
2.1.4. /system/user/export
2.1.5. /system/role/authUser/allocatedList
2.1.6. /system/role/authUser/unallocatedList
2.2. ${ancestors}
全局搜java文件
ancestors有长度限制
更多内容进群获取。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:安全艺术 安全艺术《RuoYi-4.6.0代码审计之SQL注入漏洞》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。












评论