Struts2 S2-013 远程代码执行漏洞 今天复现一下Struts2 S2-013 远程代码执行漏洞,用来显示一个超链接,当includeParams=all的时候,会将本次请求的GET和POST参数都放在URL的GET参数上。在放置参数的过程中会将参数进行OGNL渲染,造成任意命令执行漏洞,影响版本: 2.0.0 - 2.3.14.1。 ailx10 1924 次咨询 4.9 网络安...
在放置参数的过程中会将参数进行OGNL渲染,造成任意命令执行漏洞。 任意命令执行POC: ${(#_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]...
一、参考网址: https://github.com/phith0n/vulhub/tree/master/struts2/s2-013 二、 影响版本: http://struts.apache.org/docs/s2-013.html 三、 漏洞介绍: 在Struts Blank应用程序中打开HelloWorld.jsp,并将以下参数添加到url / a标签之一: includeParams="all" 这样一来,这条线将会是这样的: (它也...
受影响版本:低于Struts 2.3.14.2 官方在修复S2-012和S2-013的时候只是禁用了%{exp}这种方式,${exp}仍然有效,从而导致远程代码执行。 另外值得一提的是,官方在此次漏洞之后删除了allowStaticMethodAccess的set方法,之前所有的exp将不再有效。不过kxlzx大牛又提出了新的exp实现方法,后面给出exp。 八、S2-015 受影响...
发现成功执行了echo has vul,说明存在该漏洞。 既然发现漏洞了,那我们可以构造一个payload,执行id命令。 代码语言:javascript 复制 /?a=%24%7B%23_memberAccess%5B%22allowStaticMethodAccess%22%5D%3Dtrue%2C%23a%3D%40java.lang.Runtime%40getRuntime%28%29.exec%28%27id%27%29.getInputStream%28%29%2...
靶场地址: https://www.mozhe.cn/bug/detail/S0NiS2JMeTZUTVg3RXdMYzdqWTBQUT09bW96aGUmozhe 漏洞编号...
S2-013 存在于URL和Anchor Tag的includeParams属性中的漏洞允许远程执行命令 S2-014 通过在URL和Anchor Tag中强制插入参数引入的漏洞允许远程命令执行,会话访问和操作以及XSS攻击 S2-015 由通配符匹配机制引入的漏洞或OGNL Expression的双重评估允许远程命令执行。
3.4 S2-013 CVE-2013-1966 3.4.1 漏洞描述 当Struts2 处理使用includeParams="all"的标签时,它会将所有请求参数解析为 OGNL 表达式。 3.4.2 影响版本 Struts 2.0.0 - Struts 2.3.14.1 3.4.3 漏洞分析 S013和S001大多类似,S001在doEndTag中触发,而s013在doStartTag中触发,同理漏洞不再做重复分析。 在jsp中...
一、最新高危远程执行漏洞S2-029 目前Struts2的最新版本为Struts 2.5beta(下载地址http://struts./downloads.html),Struts最新漏洞为S-029(http://struts./docs/s2-029.html),官方已经发布公告,如下所示: Summary 概要 当在tag属性中使用用户的原始输入时会导致双OGNL表达式执行 ...
此后还出现过S2-013利用struts2标签执行ognl的方式,但是这些漏洞都相对鸡肋,影响范围也就大打折扣了。 事实上struts2框架底层是利用OGNL表达式来实现的,然而OGNL表达式的功能过于强大,导致可以直接调用java静态方法。但是官方为了防止在OGNL表达式中直接调用java静态方法,它在OGNL上下文中内置了几个命名对象。例如,#_memberA...