Hello,

We use struts version 1.2.2 and commons-file upload version 1.1.1.  It is not 
clear from this notification if these versions are impacted.


1.       Can anyone confirm if these versions or affected?

2.       If they are affected, what can be done? Should we upgrade to Struts 
2.x?

The notification below only talks about struts 2.x version.

-Deepak



PURPOSE

-------------

The purpose of this Alert is to bring attention to a recently announced 
security vulnerability for Apache Struts.



ASSESSMENT

------------------

Apache Struts up to 2.3.16.1 is being reported as having a zero-day 
vulnerability. In particular, Struts 2.3.16.1 has an issue with ClassLoader 
manipulation via request parameters which was supposed to be resolved on 2 
March 2014 through a security fix. Unfortunately, it was confirmed that the 
correction wasn't sufficient.



According to the Apache Struts Team, a security fix release fully addressing 
all these issues is in preparation and will be released as soon as possible. 
Once the release is available, all Struts 2 users are strongly encouraged to 
update their installations.



SUGGESTED ACTION

----------------------------

The Apache Struts Team has published the following mitigation information:



In the struts.xml, replace all custom references to params-interceptor with the 
following code, especially regarding the class-pattern found at the beginning 
of the excludeParams list:



<interceptor-ref name="params">

   <param

name="excludeParams">(.*\.|^|.*|\[('|"))(c|C)lass(\.|('|")]|\[).*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^action:.*,^method:.*</param>

</interceptor-ref>



If you are using default interceptor stacks packaged in struts-default.xml, 
change your parent packages to a customized secured configuration as in the 
following example. Given you are using defaultStack so far, change your 
packages from



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

    <default-interceptor-ref name="defaultStack" />

    ...

    ...

</package>

to



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

    <interceptors>

        <interceptor-stack name="secureDefaultStack">

            <interceptor-ref name="defaultStack">

                <param

name="params.excludeParams">(.*\.|^|.*|\[('|"))(c|C)lass(\.|('|")]|\[).*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^action:.*,^method:.*</param>

            </interceptor-ref>

        </interceptor-stack>

    </interceptors>



    <default-interceptor-ref name="secureDefaultStack" />

    ...

</package>



References:

=================

http://struts.apache.org/announce.html#a20140302

IMPORTANT NOTICE: This email is intended solely for the use of the individual 
to whom it is addressed and may contain information that is privileged, 
confidential or otherwise exempt from disclosure under applicable law. If the 
reader of this email is not the intended recipient or the employee or agent 
responsible for delivering the message to the intended recipient, you are 
hereby notified that any dissemination, distribution, or copying of this 
communication is strictly prohibited. If you have received this communication 
in error, please immediately return the original message to the sender at the 
listed email address. In accordance with Kewill policy, emails sent and 
received may be monitored. Although Kewill takes reasonable precautions to 
minimize the risk, Kewill accepts no responsibility for any loss or damage 
should this email contain any virus, or similar destructive or mischievous code.

Reply via email to