[TOC]
0x01 前言简述
描述: 项目中会经常遇到Apache Tomcat中间件愈来愈多, 所以作为一个安全运维工作者,在工作中将Apache Tomcat
中间件的几大较为重要的高危漏洞做一个总结整理复现。
Tomcat的高危漏洞列表:
- 1.Tomcat后台弱口令上传war包
- 2.Tomcat的PUT的上传漏洞
(CVE-2017-12615)
- 3.Tomcat反序列化漏洞
(CVE-2016-8735)
- 4.TomcatJMX服务器弱口令
- 5.Tomcat样例目录session操控漏洞
- 6.Tomcat本地提权漏洞
(CVE-2016-1240)
- 7.Tomcat win版默认空口令漏洞
(CVE-2009-3548)
0x02 漏洞利用与防御浅析
1.Tomcat后台弱口令上传war包
描述: 第一个Tomcat后台弱口令上传war包, 在这里我们就是利用暴力破解或者弱口令猜解的方式得到tomcat的后台登陆认证账户,即在登陆成功之时利用tomcat
管理控制台WAR file to deploy
, 自动部署war的功能将我们的木马进行上传部署。
授权认证:
代码语言:javascript复制# Tomcat 授权认证: 利用Authorization该Header授权字段以base64方式传递账户信息,将账号与密码用冒号进行组合再辅以base64加密所传递。
Authorization: Basic V2VpeWlHZWVrOjEyMzQ1Ng==
爆破限制: 当爆破很多次,发现正确的用户名密码字典爆破出来一直是失败的401状态码。
代码语言:javascript复制# 在 `conf/server.xml` 中添加一段 `failureCount="500"lockOutTime="0"` 超时锁定数的设置。
<Realm className="org.apache.catalina.realm.LockOutRealm" failureCount="500" lockOutTime="0"> </Realm>
WeiyiGeek.Tomcat
修复方案:
- 1、在系统上以低权限运行Tomcat应用程序。创建一个专门的 Tomcat服务用户,该用户只能拥有一组最小权限(例如不允许远程登录)。
- 2、增加对于本地和基于证书的身份验证,部署账户锁定机制(对于集中式认证,目录服务也要做相应配置), 在
CATALINA_HOME/conf/web.xml
文件设置锁定机制和时间超时限制。 - 3、以及针对
manager-gui/manager-status/manager-script
等目录页面设置最小权限访问限制。