漏洞概述 | |||
漏洞名称 | JimuReport 未授权远程代码执行 | ||
漏洞编号 | QVD-2026-61751 | ||
公开时间 | 2026-09-04 | 影响量级 | 万级 |
奇安信评级 | 高危 | CVSS 3.1分数 | 9.8 |
威胁类型 | 代码执行 | 利用可能性 | 高 |
POC状态 | 已公开 | 在野利用状态 | 未发现 |
EXP状态 | 未公开 | 技术细节状态 | 已公开 |
危害描述:攻击者可伪造固定密钥签名绕过认证,通过导出接口触发 Aviator 表达式eval 与沙箱逃逸,以应用权限执行任意命令,实现服务器沦陷。 | |||
01
漏洞详情
>>>>
影响组件
JimuReport(积木报表)是 jeecgboot(北京国炬信息技术有限公司)开源的一款免费可视化报表工具,支持在线设计复杂报表、图表、大屏与打印模板。该产品基于 Java/SpringBoot 技术栈开发,提供类 Excel 的 Web 设计器,通过拖拽即可快速完成报表制作,并支持 SQL、API、JSON 等多种数据源接入与 30 余种数据库,广泛应用于企业各类数据统计、业务分析、报表打印及大屏展示场景。
>>>>
漏洞描述
近日,奇安信CERT监测到JimuReport 未授权远程代码执行(QVD-2026-61751),该漏洞源于 JimuReport(积木报表)v2.5.1 自动导出功能在身份校验与表达式执行两方面存在安全缺陷的叠加。一方面,导出接口 /jmreport/auto/export/python/plugin 在设计上被标记为免登录接口,而其签名校验使用硬编码的固定密钥,攻击者可据此伪造任意有效的 X-Sign 请求签名并完全绕过鉴权;另一方面,该接口导出报表时会遍历请求中的查询参数值并送入 Aviator 表达式引擎执行,且未对以“=”开头的参数做任何过滤或白名单约束,攻击者可利用 Aviator 沙箱逃逸实现任意 Java 反射调用,最终在无任何凭据的情况下达成远程代码执行。目前该漏洞PoC和技术细节已公开。鉴于该漏洞影响范围较大,建议客户尽快做好自查及防护。
>>>>
利用条件
无需认证、无需特殊网络条件、无需绕过安全机制、无需用户配合。
02
影响范围
>>>>
影响版本
JimuReport = 2.5.1(Aviator < 5.4.4)
03
复现情况
目前,奇安信CERT已成功复现JimuReport 未授权远程代码执行(QVD-2026-61751),截图如下:

04
受影响资产情况
奇安信鹰图资产测绘平台数据显示,JimuReport 未授权远程代码执行(QVD-2026-61751)关联的国内风险资产总数为270728个,关联IP总数为17707个。国内风险资产分布情况如下:

05
处置建议
>>>>
安全更新
修复方案:
1. 将依赖的 Aviator 升级至 ≥ 5.4.4(可暂时阻断该沙箱逃逸链);
2. 等待 JimuReport 官方发布修复版本。
临时缓解措施:
1. 更换/移除硬编码的 `PRINT_PLUGIN_SIGN_SECRET`,使 `X-Sign` 无法被预测伪造(当前实现为类内硬编码常量,建议改为外部配置并定期轮换);
2. 在 WAF/网关拦截 `/jmreport/auto/export/python/plugin`(及 `/jmreport/auto/export`)的未授权访问,或默认关闭“自动导出/打印插件”特性;
3. 对导出参数中以 `=` 开头的表达式执行做白名单/彻底禁用,避免将任意参数值送入 Aviator 引擎;
4. 排查并轮换相关接口密钥与演示数据(删除默认演示报表或默认账号),收敛可被枚举的报表 ID。
06
参考资料
[1]https://github.com/jeecgboot/jimureport/issues/4774
声明:本文来自奇安信 CERT,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。