本文主要是介绍ssrf例题分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我们第一步先在ubuntu中解压web-ssrfme.zip,更新镜像后重启容器。
我们可以看到代码中成功拉取到ssrfme镜像
ig(preg_match('/file\:\/\/|dict\:\/\/.|\.\.\/|127.0.0.1|localhost/is',$url,$match))
使用端口访问文件,发现无法探测内网端口,我们通过phpinfo条件。
我们随机给info赋值,可以观察到hostname主机和端口,而172.21.0.3可以绕过127.0.0.1这个条件,则可以在此地址上进行测试,通过不断的改变端口值,唔,或者我们有更好的法子,可以使用burpsuite去检测。
使用$$检测
设置检测端口1-1000
发现只开放了一个80端口,猜测有可能只开了一个服务器,我们扫描一下附近的服务器
我们发现只有0.2出现Go away1,对其进行抓包发现开放了6379和80端口
发现端口后,我们来猜测一下它存放的地址,先试试默认的/var/www/html/
我们发现upload有可执行权限,可以通过这个目录去访问。我们用字典去试一下文件名。
我们写一个txt文档,试一下可能的情况
然后我们加载在路径下,判断长度是否一致,若长度一致,就说明有这个文件
获取到shell后,粘到路径里
很快就结束了,说明一次解码不成功
再进行二次编码
执行过程中,创建一个shell.php
读取flag
结束
这篇关于ssrf例题分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!