1.点击查看
出现了这个
2.F12查看源代码
3.没有发现没有有用信息时返回上一级查看源代码(要细心查看每一个界面的源代码,去寻找漏洞,顺势找到flag
4.发现包含了一个PHP文件,那我们接下来就需要了解相应的知识了
PHP伪协议(PHP定义的一种特殊访问资源的方法)
1.伪协议成功执行需要一些条件
在满足条件的情况下根据相应的类型,所对应的方法进行查看
2.
5.输入相应的编码让筛选过滤不执行而输出
(对PHP伪协议有相对应的了解以后我们可以确定相应的协议了,这道题属于php://filter协议)
php://filter 是一种元封装器, 设计用于数据流打开时的筛选过滤应用。 这对于一体式(all-in-one)的文件函数非常有用,类似 readfile()、 file() 和 file_get_contents(), 在数据流内容读取之前没有机会应用其他过滤器。
php://filter 是php中独有的一个协议,可以作为一个中间流来处理其他流,可以进行任意文件的读取;如果我们读入或者输出获取文件源码然后编码让其不执行,从而就会输出过滤掉的东西
php://filter协议,用base64编码的方式来读文件flag.php
6.payload:
/?file=php://filter/read=convert.base64-encode/resource=flag.php