文章目录

  • 一、漏洞介绍
    • 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 环境信息

复现环境如下:

名称 版本
OS CentOS7.9
IP 192.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控制台弱密码漏洞相关推荐

  1. 墨者学院tomcat后台弱口令漏洞利用

    墨者学院tomcat后台弱口令漏洞利用 点击之后要我们登录,这里abc123:999user是base64解码之后的结果,可见要爆破base64编码,这里不写爆破过程了,下一期出一下爆破过程,这里直接 ...

  2. 服务器弱口令修改,Tomcat服务器弱口令漏洞攻击实验

    1.在XP系统上搭建Tomcat服务器平台: 2.在另一台虚拟机上利用弱口令漏洞上传木马程序,使得XP系统中木马. 实验步骤 一.搭建Tomcat服务器平台 1.安装JAVAJDK 环境变量的配置:( ...

  3. 东方通中间件弱密码漏洞检测方法

    1.东方通中间件的默认管理端口为9060,可以采用扫描工具扫出一个IP范围内9060端口的IP地址. 2.更进一步,可以访问所有开放的端口:   http://ip:port/console/  如果 ...

  4. MySQL弱密码和webshell

    MySQL弱密码和webshell问题文档 一.了解漏洞 1.mysql是什么 MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational ...

  5. Kali系统MSF模块暴力破解MySQL弱口令漏洞

    一.实验环境 1.攻击方: 攻击环境使用KALI系统(使用虚拟机搭建)的Metasploit模块,msfconsole是metasploit中的一个工具,它集成了很多漏洞的利用的脚本,并且使用起来很简 ...

  6. cmd 220 ftp 远程主机关闭连接_针对一些弱口令漏洞的解决办法——设置远程管理登录的配置...

    弱口令漏洞描述 弱口令的漏洞的存在很大原因上是因为使用者的不良使用习惯导致的,当然也有一些是因为系统或者应用启用时未设置可用账户的密码信息而使用默认的配置:这就给攻击者毫不费力攻进信息系统的机会了. ...

  7. python审计ssh_代码分享:用Python编写的多协议弱密码审计工具集

    前几天与大家分享了我自己用C++实现的用于企业内部环境的ssh弱密码审计工具.在实际的工作中,我们还需要对多种常见的协议定期进行弱密码审计.为了灵活地适应企业内部复杂的网络环境,以及领导希望稳定可控的 ...

  8. 弱密码校验_TomCat8 弱密码上传getshell

    " 声明:该公众号大部分文章来自日常学习笔记,若是转载会先得到原作者授权或其他公众号白名单,并附上链接. 剑者,心之刃也.既可为杀,亦可为护.杀与护,不过一念之间!请勿利用文章内的相关技术从 ...

  9. SSH协议弱加密算法漏洞的利用及复现(中间人攻击)

    SSH协议弱加密算法漏洞的利用及复现(中间人攻击) SSH协议弱加密算法漏洞的利用及复现(中间人攻击) 很多服务器或者交换机是存在SSH协议弱加密算法漏洞的,但是该漏洞如何利用呢?最近研究了下此漏洞的 ...

  10. 墨者学院Tomcat 远程代码执行漏洞利用

    墨者学院Tomcat 远程代码执行漏洞利用 进靶场后界面是这样的,先用bp抓包 发现抓不到包,刷新两下然后放包试试,放包到看到这个界面就可以了,看地址判断有没有抓到包 抓到包之后用PUT传参 这里可以 ...

最新文章

  1. MaxAlertView 强大的弹框试图
  2. sqlite 0转换为bit_Cisco Talos在SQLite中发现了一个远程代码执行漏洞
  3. asp.net如何获取客户端真实IP地址
  4. Modularity(模块化-UMD通用模式)
  5. 《恋上数据结构第1季》集合 ListSet、TreeSet、HashSet
  6. 解决cmd命令行窗口和 powershell 汉字显示乱码问题
  7. eclipse 安装maven
  8. 管理感悟:领导如何处理拍马
  9. 发现一个特给力的编写HTML/CSS的插件——Zen Coding
  10. Redis 之 简单备份还原
  11. php 后台存cookie前台js中文读取cookie的办法
  12. matlab插值函数的作用,matlab 插值函数
  13. 2019-07高德地图行政区域省市区json数据获取(php代码)
  14. Java方法--汉字数字转阿拉伯数字
  15. android主线程报ANR的问题!
  16. android使用httpCanary抓包并解决不能联网问题
  17. 10-hive里面字段的分隔符用的什么?为什么用\t?有遇到过字段里面有\t的情况吗,怎么处理的
  18. 计算机信息学院活动简报,计算机学院学生团学共作简报(十三)
  19. 如何设定服务器协议和混插件,SSR协议和混淆插件说明 | 轩钰博客
  20. chrome浏览器的JSON格式化插件JSON-Handle

热门文章

  1. c语言怎么添加按钮,关于用C语言制作按钮的问题
  2. 帮你解决0xc0150002
  3. LoadRunner 详细使用教程
  4. 基于Lumerical fdtd的超透镜设计(介质天线结构和金属谐振结构)
  5. 第3章 如何赢得客户
  6. SolidWorks修改工程图中文字字体的方法
  7. Android蓝牙打印机打印图片文字
  8. html动画人物走路,动画人物走路教程
  9. matlab 求信噪比
  10. 写了个算分压电阻阻值的MATLAB小程序