作者名:Demo不是emo
主页面链接:主页传送门
创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CSDN写博客主要是为了分享自己的学习历程,学习方法,总结的经验等等,希望能帮助到大家
座右铭:不要让时代的悲哀成为你的悲哀
专研方向:网络安全,数据结构每日emo:我有个一直放不下的人在心里
————————————————
梦到她的第十七次,咳咳,跑题了,今天我们讲的还是ssrf漏洞的利用,选择的环境是weblogic的ssrf历史漏洞,需要用到vulhub靶场和docker环境,都给大家准备好了,需要的自取自用,这服务不得打满分啊?
** 链接:https://pan.baidu.com/s/1XRyvN5Gmqsv7pan0vVG5SQ
提取码:n3oy **
一:搭建靶场环境
1.安装docker环境和docker-compose
1、 cd /etc/yum.repos.d/
2、yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
注意:这里的yum源不能是本地yum源,需要换,可以参考一下这个博客(非本人写)
https://blog.csdn.net/aa867734398/article/details/107968565
3、yum install docker-ce docker-ce-cli containerd.io
4、service docker start 开启docker容器
5、下载docker-compose 下载地址:https://github.com/docker/compose/releases/docker-compose-Linux-x86_64 重命名为docker-compose
注意:这里我也给你们准备好了,可以不用下,网盘那个就是,只要放到/etc/yum/repos.d/下就可以了
6、cp docker-compose /usr/local/bin
7、chmod +x /usr/local/bin/docker-compose
有些小伙伴可能没用过docker容器,这里附上docker和docker-compose简单的几个命令
service docker start 开启docker环境
service docker stop 关闭docker环境
docker-compose up -d 在当前环境下启动服务
docker-compose ps 查看当前状态
docker-compose down 关闭当前服务
2.安装vulhub靶场
这个就不需要讲了,直接把我上面网盘中的vulhub压缩包放到centos解压就可以直接用了,具体用法
1.cd 到vulhub文件夹中
2.选择对应的服务并cd进去
3.选择自己想打的漏洞类型并cd进去
4.启用docker容器,启动docker-compose服务
5.docker-compose ps查看状态即可看到对应的端口
6.访问centos的ip加上这个端口即可访问到靶场环境
二:实操ssrf漏洞
1.进入靶场
根据上面vulhub的使用方法来进入靶场,具体操作如下
可以看到靶场成功开启,而且靶场环境位于7001端口,这时候我们用物理机访问centos的7001端口来访问靶场
这就是我们要的靶场环境了
2.寻找漏洞点
此时在vulhub/weblogic/ssrf/文件夹里面有一个**README.txt ,**这就是给我们的提示信息,我们查看一下
可以看到它提示了一个敏感信息泄露漏洞点位于**http://your-ip:7001/uddiexplorer/**这个链接上,我们来访问一下![](https://img-blog.csdnimg.cn/2af5b0c9dcd04f96b18183cf3bd63ed8.png)
就是上面这个样子, 还提示了ssrf漏洞点的所在位置,我们也访问一下
这样就到达了漏洞页面,他的漏洞点就在第一个输入框中
3.实际操作
接下来的操作要用到burpsuite,这个应该都有吧,先在三个输入框中随便输入一点东西,用burp抓包
1.先放入重放模块慢慢研究,尝试点击放行,可以看到在回响的389行的位置存在报错信息,如下
而且还能就很清楚的看到报错信息在n这个位置存在了一个链接 ,而且在请求包的16行的位置也存在了一个链接,而且看两个链接是不是很相似,有可能只是经过了编码的转换,(其实就是要善于观察),那我们来尝试改变请求包的链接,来看看回显会不会对应的改变
如果想直接验证ssrf漏洞,可以把请求包的16行的链接换成我们自己的主机的随便一个端口,让他尝试访问我们的主机,我们在自己的主机上再用nc工具开启对那个端口的监听,如果监听到有数据,就说明对方对我们的主机发起了请求,即存在ssrf漏洞
例如这里我们用一台kali,(正常是需要服务器的,这样对方主机才能发起请求,但这里是靶场,都是内网环境,所以没有问题,这里我再开一台kali当我的主机,并监听6666端口),修改请求包如下:
在kali设置监听,如下图,可以看到成功接收到了数据,即存在并验证了ssrf漏洞
到这里漏洞就复现成功了
4.漏洞拓展利用
此时我们返回burpsuite,查看一下回显包的内容
此时的报错信息为无法连接(could not connect),跟刚才的报错信息不同,而他又访问了我们的6666端口,为什么还会说无法连接呢?
所以这里的无法连接是无法连接什么?——端口, 有没有这种可能?让我们来验证一下,试一试常见的端口,例如3306,结果如下
看到没,并没有显示连接不上,所以这个ssrf漏洞能够起到端口探测的功能,那我们是不是就可以通过开放的端口判断它使用了哪些服务,从而进一步的做渗透测试,这就是思维的转变
今日份学习完成,感谢大家的阅读有问题的可以随时私信我,只要看到都会回,一起加油哇,respect!
版权归原作者 Demo不是emo 所有, 如有侵权,请联系我们删除。