读取源代码
题目
一看代码给出flag路径通过构造发现没用
然后抓包改包system查看也没用在我的理解就是PHPinfo处于关闭状态input指令完成命令执行不管用了
图中又提示了必须使用php://,FLAG在/flag内因此想到过滤器filter
利用filter实现对资源文件(resouces)过滤
maven filter可利用指定的xxx.properties中对应的key=value对资源文件中的
k
e
y
进
行
替
换
,
最
终
把
你
的
资
源
文
件
中
的
u
s
e
r
n
a
m
e
=
{key}进行替换,最终把你的资源文件中的username=
key进行替换,最终把你的资源文件中的username={key}替换成username=val
构造payload:?file=php://filter/resource=/flag 访问
从资源库中过滤出/flag
Resource 资源类型
资源 resource 是一种特殊变量,保存了到外部资源的一个引用。资源是通过专门的函数来建立和使用的,由于资源变量持有打开文件、数据库连接、图像画布区域等的特殊句柄,因此转换为资源没有意义。
释放资源
由于引用计数系统是Zend引擎的一部分,没有更多引用的资源将被自动检测到,并由垃圾收集器释放。由于这个原因,很少需要手动释放内存。
得到flag