CVE-2017-12615
KEV ransomware PoC ×2large1Unauthenticated RCE in Apache Tomcat 7 on Windows via HTTP PUT (CVE-2017-12615)
CISA: Apache Tomcat on Windows Remote Code Execution Vulnerability
Apache Tomcat 7.0.0 through 7.0.79 running on Windows with HTTP PUT enabled on the Default servlet (the readonly initialisation parameter set to false, which is not the default configuration) allows an unauthenticated attacker to upload a JSP file via a specially crafted PUT request (CWE-434), bypassing the extension check (e.g. via trailing-slash or case variations). The uploaded JSP can then be requested, and any code it contains is executed in the Tomcat server context, giving the attacker unauthenticated remote code execution. Only Tomcat 7 deployments on Windows with PUTs enabled are directly affected; because bundled Tomcat is also shipped in products from Red Hat (JBoss Enterprise Web Server, RHEL variants) and NetApp, those vendors issued advisories as well. This flaw is closely related to CVE-2017-12617, which was reported and patched around the same time. Exploitation is confirmed in the wild: it was added to CISA KEV on 2022-03-25 with known ransomware use, has two public proof-of-concept references, and EPSS assigns a 99.6% probability of exploitation within 30 days.
What to do: Upgrade Tomcat beyond the affected 7.0.0–7.0.79 range per vendor instructions (Apache Tomcat directly, or via Red Hat JBoss Enterprise Web Server/RHEL and NetApp bundled-product advisories), prioritizing internet-facing Windows servers since the issue is KEV-listed with known ransomware use. If patching must be delayed, ensure the Default servlet readonly parameter remains at its default (true) to disable PUT, or block PUT requests at a reverse proxy/WAF on Windows Tomcat hosts. Also check affected Windows hosts for unexpectedly uploaded .jsp files and review access logs for PUT requests that created JSPs, as indicators of compromise.
| Apache Tomcat | 7.0.0 – 7.0.79 on Windows with HTTP PUT enabled (Default servlet readonly=false) |
| netapp 7-Mode Transition Tool | bundled/embedded Tomcat 7.0.0 – 7.0.79 per NetApp advisory (version range not specified in data) |
| netapp OnCommand Balance | bundled/embedded Tomcat 7.0.0 – 7.0.79 per NetApp advisory (version range not specified in data) |
| netapp OnCommand Shift | bundled/embedded Tomcat 7.0.0 – 7.0.79 per NetApp advisory (version range not specified in data) |
| redhat JBoss Enterprise Web Server | bundled Tomcat 7.0.0 – 7.0.79 per Red Hat advisory (version range not specified in data) |
| redhat JBoss Enterprise Web Server Text-Only Advisories | bundled Tomcat 7.0.0 – 7.0.79 per Red Hat advisory (version range not specified in data) |
| redhat Enterprise Linux Server Update Services for SAP Solutions | — |
| redhat Enterprise Linux Desktop | — |
| redhat Enterprise Linux EUS | — |
| redhat Enterprise Linux EUS Compute Node | — |
| redhat Enterprise Linux for IBM Z Systems | — |
| redhat Enterprise Linux for IBM Z Systems EUS | — |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
When running Apache Tomcat 7.0.0 to 7.0.79 on Windows with HTTP PUTs enabled (e.g. via setting the readonly initialisation parameter of the Default 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.
- Affected
- Apache Tomcat
- Required action
- Apply updates per vendor instructions.
- Due date
- Ransomware use
- Known
- Vendors
- apachenetappredhat
- Products
- tomcat, 7-mode transition tool, oncommand balance, oncommand shift, enterprise linux server update services for sap solutions, jboss enterprise web server, jboss enterprise web server text-only advisories, enterprise linux desktop, enterprise linux eus, enterprise linux eus compute node, enterprise linux for ibm z systems, enterprise linux for ibm z systems eus
- Weakness
- CWE-434
- Vector
- CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H