Arbitrary Code Execution Affecting org.apache.struts:struts2-struts1-plugin package, versions [2.3,)


0.0
critical
  • Exploit Maturity

    Mature

  • Attack Complexity

    Low

  • Confidentiality

    High

  • Integrity

    High

  • Availability

    High

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • snyk-id

    SNYK-JAVA-ORGAPACHESTRUTS-31457

  • published

    22 Aug 2017

  • disclosed

    6 Jul 2017

  • credit

    Unknown

How to fix?

There is no fix version for org.apache.struts:struts2-struts1-plugin.

The vendor recommends the following:

Always use resource keys instead of passing a raw message to the ActionMessage as shown below, never pass a raw value directly

messages.add("msg", new ActionMessage("struts1.gangsterAdded", gform.getName()));

and never like this

messages.add("msg", new ActionMessage("Gangster " + gform.getName() + " was added"));

Overview

org.apache.struts:struts2-struts1-plugin is a Struts1 plugin for Struts2.

Affected versions of the package are vulnerable to Arbitrary Code Execution. When using untrusted input as a part of the error message in the ActionMessage class, a malicious user can pass in a raw message to the ActionMessage, which will then run on the server.