今天复现的内容是weblogic弱口令漏洞~
一起来看看吧。
Part.1
漏洞说明
漏洞说明
1、weblogic
Weblogic是美国Oracle公司出品的一个应用服务器(application server),确切的说是一个基于Java EE架构的中间件,是用于开发、集成、部署和管理大型分布式Web应用、网络应用和 数据库应用的Java应用服务器。
Weblogic常用端口为7001
2、漏洞说明
Weblogic后台地址为:
http://ip:7001/console/login/LoginForm.jsp
输入http://ip:7001/console会自动跳转至后台
(1)由于管理员的安全意识不强,或者配置时存在疏忽,会导致后台存在弱口令或者默认的用户名/口令。
(2)服务器存在任意文件包含、下载等漏洞时,即使后台不存在弱口令,也可以通过破解的方式获取口令。
Part.2
环境搭建
搭建Vulhub
Vulhub是一个基于docker和docker-compose的漏洞环境集合,配合docker进行使用。
首先根据官网说明,安装好vulhub:
https://vulhub.org/
部署漏洞环境
如果刚开机,需要先启动docker:
之前也写过一期docker的使用方法:
【Linux】使用docker搭建Apache/Nginx服务器
可以看到vulhub中包含以下weblogic漏洞环境:
部署弱口令漏洞环境:
查看虚拟机状态:
可以看到端口映射到了7001,尝试访问:
成功,搭建完毕~
Part.3
漏洞复现
弱口令登陆
Weblogic常见弱口令如下:
通过burp抓包,设置用户名/口令为变量:
加载用户名、口令字典:
发现使用burp爆破会导致账号无法登陆:
//weblogic默认的登陆尝试次数为5次,不要轻易爆破。
直接通过weblogic/Oracle@123登陆后台:
密码破解
如果网站存在任意文件下载等漏洞,我们还可以通过破解的方式获取密码。
weblogic密码使用AES加密,AES为对称加密方式,如果找到密钥/密文即可解密。
Weblogic将用户的密文与密钥保存在本地
/root/Oracle/Middleware/user_projects/domains/base_domain文件夹中,分别为如下两个文件:
./security/SerializedSystemIni.dat 密钥
./config/config.xml 密文
vulhub测试环境存在一个任意文件下载漏洞:
http://192.168.3.129:7001/hello/file.jsp?path=/etc/passwd
通过漏洞读取SerializedSystemIni.dat:
该密钥文件为二进制文件,通过浏览器直接下载可能会引入一些干扰字符。
直接选中后右键保存至本地:
读取./config/config.xml,找到管理员密钥:
//找到</node-manager-password-encrypted>字段
通过解密工具进行破解,结果报错:
可能是burp编码的问题,导致文件出错,修改编码方式为raw bytes:
再次保存后,破解成功:
//成功~
工具下载地址:
https://github.com/TideSec/Decrypt_Weblogic_Password
部署war包Getshell
使用上面的弱口令登陆后台:
打开【部署】-【安装】页面:
点击上载文件:
先将webshell压缩成zip压缩包:
修改后缀名为war:
//test即为部署后的目录名
选中war包并点击下一步上传:
上传成功,一直点击下一步:
最后点击“完成”按钮:
点击保存后,上传完毕:
尝试访问上传的webshell:
http://192.168.3.129:7001/test/shell.jsp
使用冰蝎连接:
完毕~
修复建议
(1)对默认的用户名/口令进行修改,防止攻击者利用初始口令进行暴力破解。
(2)系统设置强密码策略,建议用户密码采用10位以上数字加大小写字母。
(3)对密码暴力猜解行为进行图灵验证,一旦发现用户口令破解行为及时对账户进行限时封停处理。