打开题目
我们直接用 file:/// 协议读取看看flag文件
file:///flag
点击curl得到回响
得到提示告诉我们应该看看提示文件
file:///fl4g
跟着去访问了一下
再跟着去访问
从代码中我们可以看出
get传参file,我们用stristr检测file参数里面是否含有file,这个函数不区分大小写,也就是无论file参数含有大写还是小写的file字眼都会被过滤
所以我们就用不了 file 协议读取flag
解法一
?file=php://filter/read=convert.base64-encode/resource=/flag
base64解码即可得到flag
解法二
直接读取,一层一层的猜