关于struts 2为什么会有代码执行漏洞的小帖子

本文探讨了Struts 2框架存在的代码执行漏洞,重点分析了S2-015, S2-014和S2-013。文章介绍了Struts 2的结构,特别是过滤器配置和OGNL(Object-Graph Navigation Language)语法。作者提到了GitHub上的版本下载,并分享了这些漏洞的官方描述和Proof of Concept。" 122023955,1164098,C++创建Windows自动启动服务教程,"['c++', 'windows开发', '服务编程', '自动启动', '系统服务']
摘要由CSDN通过智能技术生成

版本下载

最近struts 2爆了一些很厉害的漏洞,于是乎就趋之若鹜的来分析一下。

首先因为是struts 2的漏洞,首先需要struts 2的各个版本来分析一下,这里有各种版本的下载,当然GitHub上面也会有

http://people.apache.org/builds/struts/

Struts结构

把里面的例子在tomcat里部署一下,就可以测试了。简单说一下struts 2的结构。

struts 2的安装是在web.xml里添加这样的一句,将Struts2所带的过滤器org.apache.struts2.dispatcher.FilterDispatcher配置到工程的web.xml文件中,默认情况下,该过滤器拦截请求字符串中以.action结尾的请求,并将该请求委托给指定的Action进行处理

<filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

关于action的定义是在struts.xml中,其中<default-action-ref>是所有action都捕获不到时的选项。

<result type="redirectAction">的作用是捕获到该action重定向到其他页面。

最后include了另外一个XML

<package name="default" namespace="/" extends="struts-default">

        <default-action-ref name="index" />

        <global-results>
            <result name="error">/error.jsp</result>
        </global-results>

        <global-exception-mappings>
            <exception-mapping exception="java.lang.Exception" result="error"/>
        </global-exception-mappings>

        <action name="index">
            <result type="redirectAction">
                <param name="actionName">HelloWorld</param>
                <param name="namespace">/example</param>
            
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值