Tomcat弱密码漏洞修复方案

Posted 信息安全战术防御局

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat弱密码漏洞修复方案相关的知识,希望对你有一定的参考价值。

漏洞介绍

        在日常的线上巡检和安全测试都会发现tomcat登陆页面,运维人员或者研发为了热部署war包或者其他的一些管理开放的后台服务,通常开放这类服务的时候如果密码是弱密码就很容易收到黑客的暴力破解,通过登陆tomcat后台后,黑客可以通过热部署war包来获得一个后门对网站和服务器来进行控制。下面呢我们就通过介绍如何攻击和利用来让大家熟悉这个漏洞的危害和修复的方法。

案例场景

        我们安全工程师在日常的工作当中会遇到格式各样的,对系统服务枚举,还有对中间件和web登录界面的密码枚举,那么今天呢小编记录一下使用Metasploit对Tomcat进行一个简单的登录破解。


启动Metasploit并配置

1.msfconsole启动metasploit

Tomcat弱密码漏洞修复方案

2.search搜索我们需要的模块

Tomcat弱密码漏洞修复方案

3.use调用auxiliary/scanner/http/tomcat_mgr_login

Tomcat弱密码漏洞修复方案

4.set配置RHOST和RPORT两个值即可,RHOST是目标主机IP RPORT是目标主机端口

Tomcat弱密码漏洞修复方案

5.运行run得到结果

Tomcat弱密码漏洞修复方案

当我们有了密码过后,进入了tomcat后台通过热部署获得一个后门:



修复方案

       我们的修复方案有两种:一种是关闭远程登陆功能、第二种是使用高强度的密码来保证不被猜测出来、

方案一关闭远程登陆功能:

首先我们找到tomcat安装目录下的/conf/tomcat-users.xml文件找到配置文件然后注释掉:

 

 <role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>


改成如下

<!--
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
-->


方案二使用高强度的密码:


我们可以很清楚的看到:

<user username="tomcat" password="tomcat" roles="tomcat"/>


参数名

作用

username

tomcat的登陆账号

password

tomcat的登陆密码

roles

账号的权限

注意:manager才有热部署权限

所以我们如果业务需要的情况下,当账号权限为manager时候密码的强度就显得很重要了,设置密码我们建议使用以下的密码策略:

密码策略

1.密码长度至少为8位。

2.至少含数字、大小写字母、特殊字符三种。

3.不允许包含admin、root、password、。

4.密码不得包含连续的字符有三个或者三个以上、(例如333)。

5.不得有滚键盘现象(例如qweasd)。

6.账户和密码不能相同。

7.不同的系统不能使用相同的密码。

8.密码使用不能超过90天,重要系统另外看情况处理。






Tomcat弱密码漏洞修复方案