CVE-2020-17530
Apache Struts Remote Code Execution Vulnerability
Description
CVE-2020-17530 is a CRITICAL vulnerability affecting Apache Struts, carrying a CVSS 3.1 score of 9.8. Forced OGNL evaluation in Apache Struts, when evaluated on raw user input in tag attributes, can lead to remote code execution. Affected products include Apache Struts (>= 2.0.0, < 2.5.30), Oracle Business Intelligence (12.2.1.3.0; 12.2.1.4.0), Oracle MySQL Enterprise Monitor (8.0.23). This CVE is listed in CISA's Known Exploited Vulnerabilities (KEV) catalog with a remediation deadline of 2022-05-03. With an EPSS score of 0.94305 (99.94th percentile), this vulnerability demonstrates significant real-world exploitation activity and should be prioritized for immediate remediation.
KEV Information
CVSS Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HOpen in CalculatorCWEs
Affected Products
| Vendor | Product | Version |
|---|---|---|
| apache | struts | >= 2.0.0, < 2.5.30 |
| oracle | business intelligence | 12.2.1.3.0; 12.2.1.4.0 |
| oracle | communications diameter intelligence hub | 8.0.0; 8.1.0; 8.2.0; 8.2.3 |
| oracle | communications policy management | 12.5.0 |
| oracle | communications pricing design center | 12.0.0.3.0 |
| oracle | financial services data integration hub | 8.0.3; 8.0.6 |
| oracle | hospitality opera 5 | 5.6 |
| oracle | mysql enterprise monitor | 8.0.23 |
Multiple CVSS Assessments
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
References
- http://jvn.jp/en/jp/JVN43969166/index.html(Third Party Advisory)
- http://packetstormsecurity.com/files/160721/Apache-Struts-2-Forced-Multi-OGNL-Evaluation.html(Third Party Advisory, VDB Entry)
- http://www.openwall.com/lists/oss-security/2022/04/12/6(Mailing List, Third Party Advisory)
- https://cwiki.apache.org/confluence/display/WW/S2-061(Vendor Advisory)
- https://security.netapp.com/advisory/ntap-20210115-0005/(Patch, Third Party Advisory)
- https://www.oracle.com//security-alerts/cpujul2021.html(Patch, Third Party Advisory)
- https://www.oracle.com/security-alerts/cpuApr2021.html(Patch, Third Party Advisory)
- https://www.oracle.com/security-alerts/cpuapr2022.html(Third Party Advisory)
- https://www.oracle.com/security-alerts/cpujan2021.html(Patch, Third Party Advisory)
- https://www.oracle.com/security-alerts/cpujan2022.html(Patch, Third Party Advisory)
- https://www.oracle.com/security-alerts/cpuoct2021.html(Patch, Third Party Advisory)
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2020-17530(US Government Resource)
Weakness Type
CWE-917: Improper Neutralization of Special Elements used in an Expression Language Statement (Expression Language Injection)
CVE-2020-17530 is classified under CWE-917 — Improper Neutralization of Special Elements used in an Expression Language Statement (Expression Language Injection). Expression Language Injection occurs when user-controllable input is embedded into expression language statements without proper sanitization. Expression languages like OGNL, SpEL, and EL provide powerful runtime evaluation capabilities, but when attacker input reaches these evaluation contexts, it can result in arbitrary code execution on the server. This weakness is especially prevalent in Java-based web frameworks that rely on expression languages for dynamic content rendering and data binding.
In the context of Apache Struts, this weakness is critically dangerous because OGNL (Object-Graph Navigation Language) provides direct access to Java objects, methods, and the underlying operating system. Attackers who can force OGNL evaluation of their input can instantiate arbitrary Java classes, invoke system commands, read and write files, and completely compromise the application server. The Apache Struts framework has historically been a prime target for OGNL injection attacks.
Impact Analysis
CVE-2020-17530 carries a CVSS 3.1 score of 9.8 (CRITICAL) with Unchanged Scope.
Confidentiality (HIGH): Successful exploitation grants the attacker extensive access to sensitive data processed by Apache Struts, including configuration files, credentials, and potentially data from connected systems.
Integrity (HIGH): Attackers can modify critical system files, install backdoors, alter configurations, or deploy malware on affected systems running Apache Struts.
Availability (HIGH): Complete disruption of the affected service or system is possible, including denial of service, system crashes, or rendering the product inoperable.
Scope Unchanged: The vulnerability's scope is Unchanged (U), meaning exploitation is contained within the vulnerable component. The impact, while significant, is limited to the Apache Struts environment itself.
With an EPSS score of 0.94305 (99.94th percentile), this vulnerability ranks among the most likely to be exploited in real-world attacks, underscoring the urgency of remediation.
Exploit Maturity
CVE-2020-17530 has confirmed active exploitation in the wild and is listed in CISA's Known Exploited Vulnerabilities catalog.
Exploit status: This vulnerability has been actively exploited, as confirmed by its inclusion in the KEV catalog. The EPSS score of 0.94305 (99.94th percentile) places it among the most exploited vulnerabilities tracked.
Ransomware association: As of the latest KEV data, no direct ransomware association has been confirmed for CVE-2020-17530. However, the confirmed exploitation in the wild means threat actors are actively using this vulnerability in attacks.
Attack surface: The vulnerability's high EPSS score and KEV listing confirm that threat actors have developed and used working exploits. Public proof-of-concept code and exploitation tools are available, making this vulnerability accessible to a wide range of attackers. Organizations should assume that automated scanning and exploitation tools targeting this vulnerability are in active use.
KEV deadline: CISA required federal agencies to remediate this vulnerability by 2022-05-03. All organizations should treat this deadline as a strong recommendation for their own remediation timelines.
Remediation
- Apply vendor patches immediately. Apply updates per vendor instructions. Upgrade Apache Struts to the latest patched version that addresses this vulnerability. Consult the official vendor advisory for specific patch guidance and release notes.
- Verify affected product versions in your environment. Identify all instances of Apache Struts in your infrastructure (affected versions: Apache Struts (>= 2.0.0, < 2.5.30), Oracle Business Intelligence (12.2.1.3.0; 12.2.1.4.0), Oracle MySQL Enterprise Monitor (8.0.23)). Use asset inventory and vulnerability scanning tools to ensure no instances are missed.
- Implement interim mitigations if patching is delayed. If immediate patching is not feasible, apply network-level controls such as restricting access to the affected component, enabling enhanced logging, and monitoring for indicators of compromise.
- Scan for signs of prior exploitation. Given the confirmed active exploitation of this vulnerability, review system logs and security monitoring data for evidence of compromise. Conduct a thorough investigation if any suspicious activity is detected.
- Update detection signatures and monitoring rules. Ensure intrusion detection and prevention systems, endpoint detection tools, and SIEM rules are updated to detect exploitation attempts targeting CVE-2020-17530.
- Conduct a post-remediation review. After patching, verify the fix is effective and document the remediation actions taken. Update your vulnerability management records and assess whether any additional hardening measures are warranted.
Technical Details
CVE-2020-17530 is a CRITICAL-severity vulnerability in Apache Struts that can be exploited remotely over the network without physical access. The attack complexity is low, meaning no specialized conditions or preparation are required beyond the attack prerequisites. No prior authentication or privileges are needed to initiate the attack. No user interaction is required, allowing fully automated exploitation.
Technical mechanism: Forced OGNL evaluation, when evaluated on raw user input in tag attributes, may lead to remote code execution in Apache Struts 2.0.0 - 2.5.25. The underlying flaw relates to improper neutralization of special elements used in an expression language statement (expression language injection), which allows attackers to manipulate the application's processing logic in unintended ways. Successful exploitation enables arbitrary code execution on the target system, potentially leading to full system compromise.
CVSS 3.1 vector analysis: The vector reflects an Attack Vector of NETWORK, Attack Complexity of LOW, Privileges Required of NONE, User Interaction of NONE, Scope UNCHANGED, and impact ratings of HIGH/HIGH/HIGH for Confidentiality/Integrity/Availability respectively. The Unchanged scope means impact is contained within the vulnerable component itself.
Frequently Asked Questions
Is CVE-2020-17530 being actively exploited?
Yes. CVE-2020-17530 is listed in CISA's Known Exploited Vulnerabilities (KEV) catalog, confirming active exploitation in the wild. With an EPSS score of 0.94305 (99.94th percentile), it ranks among the most exploited vulnerabilities tracked globally. Organizations should treat this as an immediate remediation priority.
What products are affected by CVE-2020-17530?
The affected products include Apache Struts (>= 2.0.0, < 2.5.30), Oracle Business Intelligence (12.2.1.3.0; 12.2.1.4.0), Oracle MySQL Enterprise Monitor (8.0.23). Organizations running any of these versions should verify their exposure and prioritize remediation. Check vendor advisories for the complete and most current list of affected versions.
How do I fix CVE-2020-17530?
Apply updates per vendor instructions. Ensure all affected instances of Apache Struts are identified using vulnerability scanning and asset management tools. If immediate patching is not possible, implement network-level mitigations and enhanced monitoring. After patching, verify the fix and scan for indicators of prior compromise.
How severe is CVE-2020-17530?
CVE-2020-17530 is rated CRITICAL with a CVSS 3.1 score of 9.8. Its EPSS score of 0.94305 places it in the 99.94th percentile for exploitation likelihood. The vulnerability has confirmed active exploitation in the wild and was required to be remediated by federal agencies by 2022-05-03 per CISA's KEV directive.
Need Help With Vulnerability Management?
Our security experts can help you prioritize and remediate vulnerabilities effectively.