BUUCTF学习笔记-Secret File
时间:2020/09/28
考点:文件包含
打开页面没发现特别的内容,右键查看源代码才发现下面隐藏了一个a标签只是字体颜色改成了和背景色一样。标签跳转到另外一个页面Archive_room.php。
页面也没什么特别的,查看源代码其实就是一个按钮,可以跳转到action.php页面。但一点进去就跳到了end.php页面中。在看它的提示让我们回去仔细看看,那估计应该是action.php页面又一个302的跳转,直接跳转到了end.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里
看了下基本就是个文件包含的题目,过滤了../、tp、input、data。
那就是可以使用?file=php://filter/convert.base64-encode/resource=flag.php
?>
输入?file=php://filter/convert.base64-encode/resource=flag.php,得到一串base64加密的字符串,解密后就能看到对应的flag。