bugku文件包含
查看源代码
图片显示为文件包含
抓了一下包没啥发现
改了一下头,使用php://input 好像也没有什么用
说明这样的方式是不对的php伪协议
有
php://input 伪协议相当于一个削弱post的方法
php://filter可以获取指定文件源码,php://filter 是php中独有的一个协议,可以作为一个中间流来处理其他流,可以进行任意文件的读取;根据名字,filter,可以很容易想到这个协议可以用来过滤一些东西;
然后我们试试用这个
php://filter 任意文件读取
?file=php://filter/resource=/flag(直接得到flag)
?file=php://filter/read=convert.base64-encode/resource=/flag
(使用加密的方式得到flag)
具体用法可看
https://blog.csdn.net/destiny1507/article/details/82347371
构造index.php?file=php://filter/read=convert.base64-encode/resource=show.php
这句话的意思是我们用base64编码的方式来读文件show.php;这时页面会显示出源文件show.php经过base64编码后的内容,然后经过base64解码就 可以得到我们想要的内容,我们先打开show.php 但是发现里面的内容解码之后是index.php说明flag很有可能是在里面
然后解码
就可得出了flag
BUUCTF INCLUDE
原理同上
?file=php://filter/read=convert.base64-encode/resource=flag.php
】[极客大挑战 2019]Secret File
查看源代码
没什么可利用的东西我们抓一下包试试
从图片中可得知
查看源码可知flag所在的位置,找到了但看不见可能用了某种
可以看出可能对flag进行了一些过滤 使用php://filter协议
构造:secr3t.php?file=php://filter/read=convert.base64-encode/resource=flag.php
我们会得到一串base64编码解码就可以得到flag了