Tomcat控制台弱密码漏洞

2023-05-16

文章目录

    • 一、漏洞介绍
      • 1.1 漏洞原理
      • 1.2 影响版本
      • 1.3 触发条件
    • 二、环境搭建
      • 2.1 环境信息
      • 2.2 tomcat配置
      • 2.3 配置漏洞环境
    • 三、攻击过程
      • 3.1 控制台弱密码
      • 3.2 冰蝎控制
    • 四、漏洞修复

一、漏洞介绍

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,制定白名单策略。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Tomcat控制台弱密码漏洞 的相关文章

随机推荐

  • RedHat/CentOS8【OpenSSL】制作自签证书和 HTTPS 配置

    1 OpenSSL 制作自签名证书 1 1 第一阶段 xff1a 制作 CA 根证书 1 2 第二阶段 xff1a 制作服务器证书 1 3 第三阶段 xff1a 制作客户端证书 xff08 双向认证使用 xff09 2 Web 容器配置 H
  • centos安装horizon client

    https blog 51cto com chelaoer 4741839 CentOS 6 6安装Horizon View Client3 4 转载 圪蹴哈么2021 12 03 14 33 40博主文章分类 xff1a 运维 文章标签c
  • 构造函数的4种使用方式总结

    我们无法像调用成员函数那样使用对象来调用构造函数 xff0c 因为在构造函数构造出对象之前 xff0c 对象是不存在的 xff0c 因此构造函数被用来创建对象 xff0c 而不能通过对象来调用 C 43 43 提供了多种使用构造函数初始化创
  • 干线协议(802.1q/ISL)

    干线协议 802 1q交换机针对vlan tag数据帧的处理 ISL 802 1q 一台交换机收到一个数据帧 需要判断其属于哪一个vlan 有两种方法 1 让数据帧带上vlan tag 通过识别tag得知所属vlan 2 给交换机一张表 表
  • Python使用集合将txt文件重复行去除

    最近爬取了百度百科一些关键词的infobox xff0c 由于关键词也是从百度百科页面大量爬取的 xff0c 其中有诸多重复 xff0c 于是使用集合将重复的关键词去掉 xff0c 此方法也适用于其他类型重复行的去除 span class
  • Linux常用命令之软件包管理

    软件包管理 软件包分类 源码包 直接可以看到源码 需要手动编译 安装速度慢 脚本安装包 xff08 部分源码包将安装过程写成脚本 xff0c 交互式安装 xff09 二进制文件包 RPM 系统默认包 已经编译好 安装速度快 rpm命令管理
  • 【Windows11】麦克风不能用、扬声器不能用的解决办法

    这是一个目录0 0 前言扬声器不能用的解决办法麦克风不能用的解决办法 前言 最近笔者刚买的麦克风和扬声器 xff0c 插到电脑上居然不能用 一通排查之后发现原来是Windows系统内的一个设置不对 xff0c 下面是具体解决办法 xff08
  • python django mysql语句增删改查+报错execute() takes from 2 to 3 positional arguments but 4 were given

    python django框架 xff0c 进行增删改查语句 xff1a 1 查询 xff08 1 xff09 正确的写法如下 xff0c cursor execute那句 sql的所有参数 xff0c 应该都写到中括号里面 xff0c 以
  • 方法的形参和实参

    引用博客 博客 何为形参 实参 xff1a 方法定义时的参数称为形式参数 xff0c 简称形参 xff1b 方法调用时的传入参数称为实际参数 xff0c 简称实参 xff1b 实参和形参的类型要一致或兼容 个数 顺序必须一致 例如 span
  • 在linux(debian/ubuntu)中idea的插件默认安装位置和配置文件在哪里?亲测可用

    在 home 当前用户名 config JetBrains IntelliJIdea2020 具体版本号 options 目录下 我的debian10 其他的linux系统应该也在相同的位置
  • 中国电信修改光猫路由模式为桥接模式

    首先 需要搞到超级管理员的账号和密码 可以上网根据光猫型号查找 也可以直接跟安宽带的工作人员要 第一步 准备超级管理员账号和密码 可以自行根据光猫型号搜索 也可以直接跟安宽带的工作人员要 第二步 使用超级管理员账密登录网关管理页面 光猫 一
  • maven官网应该下载binary还是sources

  • Linux(Debian11)iptables放行所有端口

    iptables P INPUT ACCEPT iptables P OUTPUT ACCEPT iptables P FORWARD ACCEPT
  • mysql日期加一天

    使用函数 date add 日期 interval 1 day 即可 select DATE ADD 39 2022 02 24 09 03 36 39 INTERVAL 1 DAY select DATE ADD 39 2022 02 2
  • Debian安装mysql

    Debian 10系统中默认使用了MariaDB xff0c 在APT的软件源中并没有mysql 所以 xff0c Debian 10 如果要安装mysql xff0c 需要下载安装Mysql APT Repository xff0c 更新
  • mysql设置忽略大小写

    在连接数据库的时候发现库里有表的名字只是大小写不一样 xff0c 但就是连不上 xff0c 我用的是mysql5 7 8 默认没有开启忽略大小写 xff0c 这里记录一下 1 查看数据库大小写配置 show variables like 3
  • Linux(debian)常用代理设置

    不管实在开发还是在日常使用中 xff0c 梯子是必不可少的工具 xff0c 但是在linux系统中 xff0c 有时候操作起来不是那么方便 xff0c 于是在此做个笔记 0x01 环境变量设置 设置代理 xff1b echo 39 expo
  • linux(Debian11)安装后安装无线网卡等驱动

    在工作和生活中 xff0c 我们经常会用到linux系统 xff0c debian作为一个老牌的程序员常用发行版 xff0c 自然成为我们的首选 下面记录一下 xff0c 安装无线网卡的过程 首先 xff0c 可以通过命令查看自己所需要的驱
  • 基于深度学习的知识追踪研究进展 Research Advances in the Knowledge Tracing Based on Deep Learning

    8 基于深度学习的知识追踪研究进展 Research Advances in the Knowledge Tracing Based on Deep Learning 摘要 xff1a 知识追踪是教育数据挖掘领域的一个重要研究方向 xff0
  • Tomcat控制台弱密码漏洞

    文章目录 一 漏洞介绍1 1 漏洞原理1 2 影响版本1 3 触发条件 二 环境搭建2 1 环境信息2 2 tomcat配置2 3 配置漏洞环境 三 攻击过程3 1 控制台弱密码3 2 冰蝎控制 四 漏洞修复 一 漏洞介绍 1 1 漏洞原理