当前位置: 首页 > news >正文

【代码审计】RuoYi-3.0 三处安全问题分析

目录

Shiro反序列化

SQL注入

任意文件下载


Shiro反序列化

看到pom.xml里有1.4.0的Shiro依赖

可以打Shiro反序列化

Shiro Remember Me 的生成机制,就是把用户信息序列化成字节,然后用AES加密,最后Base64编码,放到Cookie里。

详细拆解三步:

  1. 序列化: 将用户的登录信息(如用户名)通过 Java原生序列化 变成二进制字节流。

  2. 加密: 使用 AES-128-CBC 模式,配合一个 硬编码的默认密钥(如 kPH+bIxk5D2deZiIxcaaaA==)对这个字节流进行加密。

  3. 编码: 将加密后的字节进行 Base64编码,最终得到 rememberMe Cookie的值。

硬编码了密钥,拿到密钥后即可用任意恶意序列化数据进行Remember Me字段构造

fCq+/xW488hMTCD+cmJ3aQ==

直接一把梭了

SQL注入

Ruoyi操作数据库用的是MyBatis

全局搜${

${params.dataScope}可以被注入

全局搜selectRoleList

发现最终是被/system/role/list去调用

顾名思义这个接口功能点在这

params是个数组

我们可以这样传参

roleName=111&roleKey=111&status=&params[beginTime]=&params[endTime]=&params[dataScope]=and 1=2
union select 1,2,3,4,5,6,7,concat(0x7e,(select database()),0x7e),9&pageSize=10&pageNum=1&orderByColumn=roleSort&isAsc=asc

成功查询到数据库名为ry

任意文件下载

全局搜/download

逻辑很简单,就是接收一个可控的filename参数,然后对返回的文件名做一些随机化处理

将指定文件内容返回回来

payload:

/common/download?filename=../../../../../../flag.txt
http://www.dtcms.com/a/575278.html

相关文章:

  • 网站制作设计报价网站开发需要什么工程师
  • 网站建设微商城安阳公司做网站
  • 芜湖做网站工作室有专门的网站
  • 如何创建自己的网站平台企业网站的建设与流程
  • 公司门户网站开发价格专业软文发布平台
  • 保险网站建设的总体目标西海岸建设局网站
  • 做网站包括备案吗市场调研报告1500字
  • 北京商业网站建设深圳微商城网站制作联系电话
  • 电子商务网站建设的主页中卫网络工程招聘
  • 网投网站制作成都市房产信息网查询
  • 【仓颉纪元】仓颉服务端深度实战:10 天构建高性能报名 API
  • 企业网站的意思青海省城乡建设厅网站首页
  • stanley工具网站开发大型房产网站建设
  • 环保网站模版app开发教程
  • 百度云引擎搜索wordpress分类设置seo
  • 维度网络做网站网站主题推荐
  • HandlerAdapter
  • 企业网站建设ejiew湖南酒店网站建设
  • 静安建设机械网站网站网页设计制作
  • 第13讲:Bloc/Riverpod进阶 - 构建可预测、易于测试的业务逻辑
  • Rust 练习册 8:链表实现与所有权管理
  • 非常好的Rust自动管理内存的例子
  • 昆明响应式网站制作网站建设插件
  • 站长素材音效下载极速网站建设定制多少钱
  • CATASTROPHIC FAILURE OF LLM UNLEARNING VIA QUANTIZATION
  • 医院门户网站模板网站设置受信任
  • 网站简历一个ip地址上可以做几个网站吗
  • Avalonia 使用ItemsControl示例以及问题记录
  • 建设部网站公示钦州公租房摇号查询无锡手机网站开发
  • 公司网站内容相近为什么要给企业建设网站?