[极客大挑战 2019]Secret File

打开页面直接f12寻找页面源代码,

<a id="master" href="./Archive_room.php" style="background-color:#000000;height:70px;width:200px;color:black;left:44%;cursor:default;">Oh! You found me</a>

打开./Archive_room.php,发现页面中有一个按钮,点击进入了一个新的页面,页面中显示*“查阅结束,如果没看清回去仔细看看”*,于是回到原来的页面查看源代码,发现按钮指向的其实是./action.php,而并非./end.php,所以可能是一访问前者,就跳转到了后者,使用burpsuite对其抓包:
image-20210416220129540
发现了./action.php的真正内容,访问./secr3t.php,页面源代码被直接显示出来:
image-20210416220417361
首先按照注释中的提示访问./flag.php
image-20210416220520050
可以确定flag就在flag.php中,首先怀疑前端对输出的内容进行了过滤,查看源代码之后发现并没有,因为前几天刚刚写过另一道题(详情见此)中,flag被藏在了flag.php中的注释中,访问flag.php时只会将其当作代码执行。

查看./secr3t.php爆出的源代码,考虑从文件包含漏洞来入手,如上图所示后端对payload进行了一些过滤,但是没有过滤刚刚学的php://fileter,于是现学现卖,构造payload来获取flag.php的源代码:

?file=php://filter/convert.base64-encode/resource=flag.php

返回了源代码经过base64加密之后的密文,使用base64进行解密,成功得到了flag

#这几天把文件包含漏洞整理一下

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐