中间件漏洞总结- Tomcat
Posted ssw6
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中间件漏洞总结- Tomcat相关的知识,希望对你有一定的参考价值。
(一) Tomcat简介
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用 服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应 html ( 标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
(二) 远程代码执行
1、 漏洞简介及成因
Tomcat 运行在Windows 主机上,且启用了 HTTP PUT 请求方法,可通过构造的攻击请求向服务器上传包含任意代码的 JSP 文件,造成任意代码执行。
影响版本: Apache Tomcat 7.0.0 – 7.0.81
2、 漏洞复现
配置漏洞,开启put方法可上传文件功能。
tomcat文件夹下的/conf/web.xml文件插入:
<init-param> <param-name>readonly</param-name> <param-value>false</param-value> </init-param>
重启tomcat服务。
访问127.0.0.1:8080,burp抓包,send to Repeater,将请求方式改为PUT,创建一个122.jsp,并用%20转义空格字符。123.jsp内容为:
<%Runtime.getRuntime().exec(request.getParameter("cmd"));%>
返回201,说明创建成功。
访问127.0.0.1:8080/122.jsp?cmd=calc。
弹出计算器:
3、 漏洞修复
1)检测当前版本是否在影响范围内,并禁用PUT方法。
2)更新并升级至最新版。
(三)war后门文件部署
1、漏洞简介及成因
Tomcat 支持在后台部署war文件,可以直接将webshell部署到web目录下。
若后台管理页面存在弱口令,则可以通过爆破获取密码。
2、漏洞复现
Tomcat安装目录下conf里的tomcat-users.xml配置如下:
访问后台,登陆:
上传一个war包,里面是jsp后门:
成功上传并解析,打开:
可执行系统命令:
也可进行文件管理,任意查看、删除、上传文件:
3、漏洞修复
1)在系统上以低权限运行Tomcat应用程序。创建一个专门的 Tomcat服务用户,该用户只能拥有一组最小权限(例如不允许远程登录)。
2)增加对于本地和基于证书的身份验证,部署账户锁定机制(对于集中式认证,目录服务也要做相应配置)。在CATALINA_HOME/conf/web.xml文件设置锁定机制和时间超时限制。
3)以及针对manager-gui/manager-status/manager-script等目录页面设置最小权限访问限制。
4)后台管理避免弱口令。
以上是关于中间件漏洞总结- Tomcat的主要内容,如果未能解决你的问题,请参考以下文章