Improper Input Validation Affecting org.apache.struts.xwork:xwork-core package, versions [2.0.0,2.3.24.1)


Severity

Recommended
0.0
high
0
10

CVSS assessment made by Snyk's Security Team

    Threat Intelligence

    EPSS
    1.35% (87th percentile)

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-ORGAPACHESTRUTSXWORK-5811864
  • published 1 Aug 2023
  • disclosed 14 May 2022
  • credit Huawei PSIRT

How to fix?

Upgrade org.apache.struts.xwork:xwork-core to version 2.3.24.1 or higher.

Overview

org.apache.struts.xwork:xwork-core is a generic command pattern framework. It forms the core of Struts 2.

Affected versions of this package are vulnerable to Improper Input Validation such that the TextParseUtil.translateVariables method allows remote attackers to execute arbitrary code via a crafted OGNL expression with ANTLR tooling.

Note:

The Struts 2 framework does not pass any user-modifiable input to this method, neither directly nor indirectly. However, a developer crafting a Struts based web application might pass unsanitized user input to TextParseUtil.translateVariables or ActionSupport's getText methods. In that case a RCE exploitation might be possible.

Workaround

Users who are unable to upgrade to the fixed version should not pass unsanitized user input to framework methods that include OGNL expression evaluation.

References

CVSS Scores

version 3.1
Expand this section

Snyk

8.8 high
  • Attack Vector (AV)
    Network
  • Attack Complexity (AC)
    Low
  • Privileges Required (PR)
    Low
  • User Interaction (UI)
    None
  • Scope (S)
    Unchanged
  • Confidentiality (C)
    High
  • Integrity (I)
    High
  • Availability (A)
    High