Weblogic简介
WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。
测试环境
基于Vulhub的Weblogic漏洞环境,模拟了一个真实的Weblogic环境,其后台存在一个弱口令,并且前台存在任意文件读取漏洞,模拟对Weblogic场景的渗透。
Weblogic弱口令
访问Welogic默认控制台地址:http://192.168.10.55:7001/console/login/LoginForm.jsp
Weblogic常见弱口令:https://cirt.net/passwords?criteria=weblogic
# 参考地址:https://cirt.net/passwords?criteria=weblogic system / password admin / admin weblogic / weblogic wlcsystem / wlcsystem wlpisystem / wlpisystem weblogic / Oracle@123 joe / password mary / password system / security
使用默认口令weblogic/Oracle@123登录
任意文件读取
前台存在任意文件读取漏洞,在不知道登录密码的情况下可通过此漏洞读取weblogic加密后的密码文件,在通过破解密码获得登录密码。
路径:http://192.168.10.55:7001/hello/file.jsp?path=
读取敏感文件
尝试使用http://192.168.10.55:7001/hello/file.jsp?path=/etc/passwd读取敏感文件
成功下载敏感文件
读取密码文件
weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可。这两个文件均位于base_domain下,名为SerializedSystemIni.dat和config.xml,在本环境中为./security/SerializedSystemIni.dat和./config/config.xml(基于当前目录/root/Oracle/Middleware/user_projects/domains/base_domain)。
读取./security/SerializedSystemIni.dat
读取./config/config.xml,此文件为全局配置文件,找到其中的<node-manager-password-encrypted>值即为加密后的管理员密码
解密密文
Weblogic采用AES( 老 版 本 3DES)加密,是对称加密,只要获取密文和加密时的密钥即可解密,前文中已经获取到密文和密钥。vulhub漏洞项目的/decrypt里已经给出解密工具weblogic_decrypt.jar,使用此工具解密。
获取密码
成功登录
后台Getshell
制作一个war包
部署war包
一直下一步
连接即可getshell