Apache Tomcat修复严重漏洞:信息泄露与远程执行风险

需积分: 50 7 下载量 64 浏览量 更新于2024-09-11 收藏 235KB DOCX 举报
腾讯云安全中心于2019年9月19日报告称,Apache Tomcat软件包存在两个严重级别的安全漏洞,分别是CVE-2017-12616信息泄露漏洞和CVE-2017-12615远程代码执行漏洞。这些漏洞使得攻击者有可能获取用户服务器上的JSP文件源代码,或者通过构造恶意请求,将JSP文件上传到服务器,进而执行任意代码,从而对服务器安全构成重大威胁。 云鼎实验室针对这些漏洞进行了深入研究和复现,发现这是一个高风险漏洞,即使服务器配置不是默认设置,只要存在漏洞,攻击者就可能利用PUT方法创建并执行恶意webshell,从而控制服务器。在Windows环境下,如果将Tomcat的readonly参数设置为false,攻击者就能利用PUT请求创建JSP文件并实现代码执行。 漏洞的具体分析涉及到Tomcat的web.xml配置文件,其中规定了后缀为.jsp和jspx的请求处理规则。正常情况下,"1.jsp"这样的文件名会被交给DefaultServlet处理,而非JspServlet。但在Windows系统中,由于文件名限制,攻击者可以利用空格或NTFS文件流技术绕过这一限制,通过创建名为"1.jsp/"的文件,导致代码被执行。 进一步的黑盒测试显示,即使使用/1.jsp/这样的路径,攻击者仍能成功创建JSP文件,这意味着漏洞不仅影响Windows,也影响Linux服务器,并且绕过了之前的补丁。在处理PUT请求时,Tomcat在创建文件时会进行规范化处理,这使得攻击者能够利用这一特性,通过去掉文件路径中的最后一个"/"来达到目的。 修复这个漏洞的最佳实践是将conf/web.xml中DefaultServlet的readonly属性设置为true,以阻止恶意文件的创建。所有受影响的Tomcat版本,从5.x到9.x,都可能受到漏洞的影响,因此及时更新和强化安全配置至关重要。确保服务器管理员对这类漏洞保持警惕,定期检查和维护,以防止潜在的安全威胁。