一个关于本地包含和PHP伪协议的CTF题(Bugku——flag在index里)

在点开题目链接,查看源代码之后,我们看到这个界面:
在这里插入图片描述
这看起来没什么,我们点击链接之后,发现它的URL发生了变化:
在这里插入图片描述
看到file,即想到了本地文件包含漏洞。

根据题目flag在index里,但index文件并没有flag,因为PHP代码是后端解析实现,不会在前端显示代码,所以返回的是运行结果。于是想到我们可以使用PHP伪协议来读取隐藏的内容,关于PHP伪协议的内容,可以参照PHP手册相关内容(可点击)
先看如何使用,将参数file的值设定为:

file=php://filter/read=convert.base64-encode/resource=index.php

根据PHP手册,我们选择了read参数,使其用base64编码,并将resource参数设定成index.php(如果文件在上一级,则resource=…/xxx.php),两个参数之间用“/”隔开。
在这里插入图片描述
得到一串很长的base64码,对其进行解码,即可得出index.php的源码。可以找到flag。

发布了27 篇原创文章 · 获赞 1 · 访问量 822

猜你喜欢

转载自blog.csdn.net/weixin_44377940/article/details/89300542