当我们打开靶场链接会发现这么一个界面

[极客大挑战 2019]Secret File-1.png

基本上没有什么信息,但是f12查看源代码会发现指向了Archive_room.php这个文件

[极客大挑战 2019]Secret File-2.png

我们点击访问,提示这样,我们点击访问

[极客大挑战 2019]Secret File-3.png

结果提示

[极客大挑战 2019]Secret File-4.png

当我们把鼠标放到secret这个按钮上的时候发现,浏览器左下角明明是action.php,但是访问完就成了end.php,那应该是直接自动跳转了,所以我们直接上burpsuite

把secret的包发送到repeate模块,可以发现响应包有一个secr3t.php,访问后发现了页面的源码

[极客大挑战 2019]Secret File-5.png
<html>
    <title>secret</title>
    <meta charset="UTF-8">
<?php
    highlight_file(__FILE__);
    error_reporting(0);
    $file=$_GET['file'];
    if(strstr($file,"../")||stristr($file, "tp")||stristr($file,"input")||stristr($file,"data")){
        echo "Oh no!";
        exit();
    }
    include($file); 
//flag放在了flag.php里
?>
</html>

从代码上看,我们应该是要传入file参数,然后使用php伪协议读取flag.php才可以获取到flag,而且好像还过滤掉了php://data和php://input,所以我们使用?file=php://filter/read=convert.base64-encode/resource=flag.php来获取,执行完发现出现了base64编码

[极客大挑战 2019]Secret File-6.png

解码后得到flag

[极客大挑战 2019]Secret File-7.png