buu-[极客大挑战 2019]Secret File
打开题目
根据提示页面应该是隐藏了一些信息的
查看一下源代码
发现了
进去看看
中间是一个连接,通过查看源代码可以得知是./action.php
点进去看看
发现跳转到了end.php
根据提示猜测应该是action.php的访问时间短,过了访问时间后会直接跳转到end.php
使用bp抓包试试
发现还有secr3t.php
访问看看
发现了一些php代码
1 <?php 2 highlight_file(__FILE__); 3 error_reporting(0); 4 $file=$_GET['file']; 5 if(strstr($file,"../")||stristr($file, "tp")||stristr($file,"input")||stristr($file,"data")){ 6 echo "Oh no!"; 7 exit(); 8 } 9 include($file); 10 //flag放在了flag.php里 11 ?>
发现有文件包含漏洞,可是过滤掉太多东西了,好像用不了
还是先访问flag.php试试
查看源代码也找不到flag。。。
突然想到上面没有过滤掉filter,那我们就可以通过php伪协议php://filter来读取文件了
payload:file=php://filter/convert.base64-encode/resource=flag.php
再将得到的base64解码即可得到flag