Apache Struts 2.x < 2.3.28 Multiple Vulnerabilities (S2-028) (S2-029) (S2-030) (S2-034)

High Nessus Plugin ID 90153

Synopsis

A web application running on the remote host uses a Java framework that is affected by multiple vulnerabilities

Description

The version of Apache Struts running on the remote host is 2.x prior to 2.3.28. It is, therefore, affected by the following vulnerabilities :
- A cross-site scripting vulnerability exists due to improper validation of user-supplied input when using a single byte page encoding. A remote attacker can exploit this, via non-spec URL-encoded parameter value including multi-byte characters. (CVE-2016-4003)

- A remote code execution vulnerability exists due to double OGNL evaluation of attribute values assigned to certain tags. An unauthenticated, remote attacker can exploit this, via a specially crafted request, to execute arbitrary code. (CVE-2016-0785)

- A cross-site scripting vulnerability exists due to improper validation of user-supplied input when using the I18NInterceptor. A remote attacker can exploit this, via a specially crafted request, to execute arbitrary script code in a user's browser session. (CVE-2016-2162)

- A denial of service vulnerability exists in the Object-Graph Navigation Language (OGNL) component due to a flaw in the implementation of the cache for stored method references. A context-dependent attacker can exploit this to block access to arbitrary websites.
(CVE-2016-3093)

Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version number.

Solution

Upgrade to Apache Struts version 2.3.28 or later. Alternatively, apply the workaround referenced in the vendor advisory.

See Also

https://struts.apache.org/docs/s2-028.html

https://struts.apache.org/docs/s2-029.html

https://struts.apache.org/docs/s2-030.html

https://struts.apache.org/docs/s2-034.html

http://struts.apache.org/docs/version-notes-2328.html

Plugin Details

Severity: High

ID: 90153

File Name: struts_2_3_28_win_local.nasl

Version: 1.15

Type: combined

Agent: windows, macosx, unix

Family: Misc.

Published: 2016/03/24

Updated: 2019/02/15

Dependencies: 11936, 73943, 99671, 122235

Configuration: Enable paranoid mode

Risk Information

Risk Factor: High

CVSS Score Source: CVE-2016-0785

CVSS v2.0

Base Score: 9

Temporal Score: 6.7

Vector: CVSS2#AV:N/AC:L/Au:S/C:C/I:C/A:C

Temporal Vector: CVSS2#E:U/RL:OF/RC:C

CVSS v3.0

Base Score: 8.8

Temporal Score: 7.7

Vector: CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Temporal Vector: CVSS:3.0/E:U/RL:O/RC:C

Vulnerability Information

CPE: cpe:/a:apache:struts

Required KB Items: Settings/ParanoidReport

Exploit Available: false

Exploit Ease: No known exploits are available

Patch Publication Date: 2016/03/22

Vulnerability Publication Date: 2016/03/15

Reference Information

CVE: CVE-2016-4003, CVE-2016-0785, CVE-2016-2162, CVE-2016-3093

BID: 86311, 85066, 85070, 90961