IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Tomcat后台弱口令上传war包漏洞复现 -> 正文阅读

[Java知识库]Tomcat后台弱口令上传war包漏洞复现

Tomcat后台弱口令上传war包漏洞复现

漏洞原因:

Tomcat 支持在后台部署war文件,可以直接将webshell部署到web目录下。

解释一下War包的概念:war包是用来进行Web开发时一个网站项目下的所有代码,包括前台HTML/CSS/JS代码,以及后台JavaWeb的代码。当开发人员开发完毕时,就会将源码打包给测试人员测试,测试完后若要发布则也会打包成War包进行发布。War包可以放在Tomcat下的webapps或word目录,当Tomcat服务器启动时,War包即会随之解压源代码来进行自动部署。

环境搭建:

ApacheTomcat7.0.88(关于爆破本来应该使用6版本,不过为了总结更多关于防御的知识,所以这里我使用7版本的)

在这里jdk以及tomcat的安装配置就不展示了。大家自行百度。准备好如下图所示的实现环境后,接下来我们来开始复现操作。

在这里我们设置一个8090的本地代理端口,以防止和tomcat默认的本地8080端口所冲突造成不必要的影响。

我们随便输入12345账户密码来进行爆破。

?

得到账户密码是利用Authorization该授权字段以base64方式传递账户信息。

得到他的加密方式,接下来我们拿去解密分析他的数据传递方法。

可以得出tomcat在授权认证时,将账号与密码用冒号进行组合再辅以base64加密所传递。接下来我们构造字典来进行爆破。

利用burp抓包发送到Intrude模糊测试模块来进行暴力破解。

上面我们得到了tomcat数据传递格式为username:password的格式,这是就要使用到burp模糊测试模块中的customiterator自定义迭代类型的payload,官方的解释是该类型的payload共分为8个占位符,每一个占位又可以指定简单列表的payload类型。再根据占位的数值,与每一个payload列表区进行笛卡儿积生成集合组。

得到最终的payload列表。我的理解就是利用数学中的笛卡儿积进行集合,去拼凑各种可能存在的payload可能列表。设置格式如下:

按照payload类型分组进行设置Position参数,比如说我们要爆破的Tomcat数据。需要设置的第一个Position参数就是username参数,然后再进行添加payload字典。以此类推第二个参数就是冒号:,第三个就是password字段。设置完成后再需要对数据字段进行base64编码就可以爆破了。设置方法如下图所示:?

以上就收tomcat基础认证爆破,当然我们还可以去自己收集匹配号的三个字段字典或者base64加密过的字典以及metasploit中的tomcat爆破,更加方便进行爆破。方式多样,根据自己的需求去使用。

爆破很多次,发现正确的用户名密码字典爆破出来一直是失败的401状态码。我们可以在tomcat的后台jar脚本文件中发现一串警告信息。

这是由于在tomcat6版本以后针对爆破做了锁定机制的设置。我们先去更改一下。为了方便演示。

在conf/server.xml中添加一段failureCount="500"lockOutTime="0"超时锁定数的设置。

即可解除针对爆破次数过多的用户的锁定机制。爆破成功之后来到Tomcat后台即可部署我们的war木马文件来进行提权操作。?

?

漏洞修复:

在系统上以低权限运行Tomcat应用程序。创建一个专门的 Tomcat服务用户,该用户只能拥有一组最小权限(例如不允许远程登录)。

增加对于本地和基于证书的身份验证,部署账户锁定机制(对于集中式认证,目录服务也要做相应配置)。在CATALINA_HOME/conf/web.xml文件设置锁定机制和时间超时限制。

以及针对manager-gui/manager-status/manager-script等目录页面设置最小权限访问限制。

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-11-22 12:12:16  更:2021-11-22 12:12:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:09:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码