ssrf漏洞复现

将web-ssrfme.zip解压缩在Ubuntu下

Docker-compose up -d 

更新后的镜像重新启动容器

可以看到已经拉取成功ssrfme镜像

我们使用端口访问文件,可以看到有一个过滤条件,它限制了file,dict协议,127.0.0.1和localhost 也不能用,其实就是不想你探测内网端口,也不能读取内网服务文件。

但是!它可以通过phpinfo了条件

给info随便赋一个值,出来了php界面,可以观察到hostname主机和端口,而172.21.0.3是可以绕过127.0.0.1这个条件,我们可以在这个地址上测试,不断的改变端口值,端口不一样,出来的值也会有所区别

当端口为6379的时候,没有任何区别

但是一直这样试很费时间,可以使用burpsuite去检测端口

使用$$检测的端口地方

设置检测端口1-1000

只开放了一个80端口,也没有数据库,如果按172.21.0.3路径一直找端口,肯定是不行的

所以可以想一想,可能有时候会不只开了一个服务器

我们可以扫附近可能的服务器

0.3和0.4都访问没有什么变化

只有0.2可以,所以可以把关注点放在0.2的服务器,然后使用buresuite继续抓包

可以发现开放了6379和80端口

端口发现了,现在要想可能存放的物理地方,一般会考虑会在/var/www/html/

因为有的人懒,习惯放在默认的路径

发现upload有可执行权限,可以通过这个目录去访问。

但是在真实比赛中,很难知道文件名,可以使用字典去试

写一个txt文档,试可能有的情况

然后加载在路径下,判断长度是否一致,如果一致,说明就有这个文件

获取到shell后,传递到路径里

很快就结束了,说明一次解码是不成功的

再进行二次编码

再执行过程中,创建了一个shell.php

读取flag

flag出来了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值