web

ctfshow中ssrf部分351-360

noob
2021-05-10 / 0 评论 / 271 阅读 / 正在检测是否收录...

web351

直接使用file伪协议读取即可,payload:url=http://127.0.0.1/flag.php

web352

过滤了localhost和127.0.0.1,可以尝试多种方式进行绕过,我用的是http://127.0.1/flag.php,还有其他比如:

url=http://0x7F.0.0.1/flag.php  16进制  
url=http://0177.0.0.1/flag.php   8进制
url=http://0.0.0.0/flag.php       
url=http://0/flag.php 
url=http://127.127.127.127/flag.php

web353

对127.0.0.1有了更多的要求,不允许出现127.0.的内容,使用上面的绕过方式就可以绕过,payload:url=http://0/flag.php

web354

不允许出现0和1,这里当时没有思路了,看到yu师傅尝试了两种方法,第一种是利用不常用的字符进行绕过,但是最后没有成功,第二种方法是修改域名解析A记录为127.0.0.1,然后payload:url=http://xxxxx/flag.php,这里的xxxxx是用的域名

web355

对长度做了限制,直接使用http://127.1/flag.php进行绕过

web356

依旧是长度,这次是3,使用http://0/flag.php可以绕过

web357

这里是DNS重绑定漏洞,具体可看下链接,实际操作就是,先去http://ceye.io/里注册一个账号,然后,他会给一个你自己的域名,然后在下面的DNS Rebinding中设置两个ip,第一个随便设置,第二个要设置成127.0.0.1,然后就是先在自己的服务器上设置一个111.php内容为:<?php $headers = ("Location:http://127.0.0.1/flag.php");?>然后在题目页访问111.php,然后访问第一个注册账号的域名的/flag.php,多次尝试拿到flag。

web358

emm,要求访问的站必须是http://ctf.开头,show结尾,确实不知道怎么过,看了雪晴师傅的博客,给推了一篇文章payload:url=http://ctf.@127.1/flag.php?show

web359

打无密码的mysql,使用Gopherus,构造语句,直接替换check.php中的url,注意_后面的东西要再一次进行url编码,然后传文件后当时想尝试蚁剑链接,但是链接不上,于是尝试命令执行,拿到flag。

web360

和web359一样,但是这次是直接打redis,并且上传的文件是shell.php,同样拿到shell想尝试蚁剑,但是不行,只能命令执行。

24

评论 (0)

取消