Tomcat控制台弱密码漏洞

Posted 風月长情

tags:

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

文章目录

一、漏洞介绍

1.1 漏洞原理

  Tomcat支持后台部署War文件,默认情况下管理页面仅允许本地访问,如果网站运维/开发人员手动修改配置文件中的信息允许远程IP进行访问(需求),且恶意攻击者拿到管理界面账户密码情况下,则可上传木马文件,控制系统。

1.2 影响版本

  • 全版本

1.3 触发条件

  1. 默认配置文件已被修改,允许非本地访问
  2. 攻击者通过技术手段拿到账户密码

二、环境搭建

2.1 环境信息

复现环境如下:

名称版本
OSCentOS7.9
IP192.168.181.135
JDK版本1.8.0_292
Tomcat版本10.0.8
冰蝎3.0

2.2 tomcat配置

》》下载tomcat:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/(可以采用其它的源)

》》上传到服务器上并进行解压

》》更改文件名称

》》添加全局变量,使用修改tomcat启动关闭程序配置文件方式:

Tips:不建议写到全局配置变量中,否则如果装有多个JDK会冲突

》》在startup.sh和shutdown.sh加上下面一段:

Tips:注意第一行自己的Java路径是否一致,否则后边显示启动成功但服务启动不起来

export JAVA_HOME=/usr/local/java
export TOMCAT_HOME=/usr/local/tomcat
export CATALINA_HOME=/usr/local/tomcat
export CLASS_PATH=$JAVA_HOME/bin/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tool.jar
export PATH=$PATH:/usr/local/java/bin:/usr/local/tomcat/bin

》》启动tomcat:

》》防火墙放行8080端口

如果出现上边启动命令成功但无法查看8080端口情况:

  1. 需要排查自己的java家目录是否和tomcat环境变量中一致,如果不一致需要查看更正java家目录于配置文件中:
    https://www.cnblogs.com/wjup/p/11041274.html(方法一)
  2. 添加后,重启tomcat即可

》》访问站点查看启动情况:

》》默认情况下控制台不允许访问,需要编辑控制台配置文件

2.3 配置漏洞环境

》》编辑用户权限的配置文件

》》添加如下两行

<role rolename="manager-gui"/>
<user username="tomcat" password="tomcat" roles="manager-gui"/>

Tips:由于8代的tomcat及以上默认启用了网段访问限制,只有127网段的局域网机器才具有访问权限,如果其它网段登录仍会显示403,所以需要分别修改以下两个文件中:

将原来的127修改为如下(允许所有网段访问)

》》保存退出

》》重启tomcat服务
》》点击管理界面

》》需要认证

三、攻击过程

3.1 控制台弱密码

》》通过Nmap扫描目标端口在8080端口上启动了tomcat

》》访问tomcat站点

》》访问tomcat管理界面

》》输入弱密码,登录成功

》》成功登录控制台

3.2 冰蝎控制

》》更改冰蝎马密码:(MD5加密的前16位)
》》使用jar生成war包:(在java目录中执行,添加环境变量的略过)

Tips:为什么需要上传War包?
答:war包是使用java进行开发一个网站下所有代码(前端+后端),开发完毕后会将源码打包给测试人员测试,测试完毕会使用war包进行发布,war包可以放在tomcat的webapps下,tomcat服务器启动后war包中的源代码会自动进行部署。

》》将war包上传到控制台

》》上传成功,查看目录

》》冰蝎创建连接:

》》成功执行命令

四、漏洞修复

  1. 严格控制账户权限,使用低权限账户运行tomcat程序(如非必须禁止远程登录);
  2. 对需要远程登录账户,严格要求密码复杂度(大小写+8位以上+数字特殊字符),并定期进行更改;
  3. context.xml文件中限制远程访问IP,制定白名单策略。

以上是关于Tomcat控制台弱密码漏洞的主要内容,如果未能解决你的问题,请参考以下文章

Tomcat控制台弱密码漏洞

Tomcat弱密码漏洞修复方案

[漏洞复现] [Vulhub靶机] Tomcat7+ 弱口令 && 后台getshell漏洞

怎么360木马防火墙老提醒我发现黑客利用弱密码或漏洞远端控制您的电脑?我该怎么办?详细的说下。谢谢怎么

tomcat8+ 弱口令 && 后台getshell 漏洞复现

高危安全通告Apache Tomcat Session 反序列化代码执行漏洞(CVE-2020-9484)