七、[极客大挑战 2019]Secret File

1.知识点:
1)前端中背景可以覆盖内容,页面源代码可以查看完整的html
2)在php文件中可以写入html代码,html可在前端展示出来,php代码主要是处理数据,通常不会展示。
3)文件包含漏洞,PHP伪协议获取文件
php://filter 是一种元封装器, 设计用于数据流打开时的筛选过滤应用。 这对于一体式(all-in-one)的文件函数非常有用,类似 readfile()、 file() 和 file_get_contents(), 在数据流内容读取之前没有机会应用其他过滤器。
2.打开题目
在这里插入图片描述

F12查看源码:
在这里插入图片描述

3.访问Archive_room.php
在这里插入图片描述

发现又给出了提示:我把他们都放在这里了,去看看吧。还有一个类似button一样的东西,查看审查元素可知是action.php,我们点进去。
在这里插入图片描述

访问action.php立即跳转到了end.php,并且页面显示的是:查阅结束 没看清么?回去再仔细看看吧。
4.Burp抓包
我们可以猜测action.php访问时间很短,时间一到立即跳转到end.php。为了拦截action.php,我们可以使用BrupSuite来抓包。
在这里插入图片描述

在拦截的action.php中我们看到一处提示代码:

5.访问secr3t.php,页面显示了php代码: secret <?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里 ?> ![在这里插入图片描述](https://img-blog.csdnimg.cn/7152b6b6bd004638ac789503d7f2f040.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ZuN6K-t5YS_,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)

发现这里有一个文件包含漏洞,但是在这里好像没什么用,因为我们还不确定存在flag的文件。根据代码的注释内容,访问flag.php。
在这里插入图片描述

刚开始我们以为还是像之前一样用背景把flag给覆盖掉了,但是通过查看页面源代码发现并没有将flag写出来。根据提示我们可以肯定flag确实是在这里,但是前端却看不到,我们猜测flag是写在了php代码里面。那么怎样来获取完整的flag.php文件呢?我们立马想到了secr3t.php的文件包含漏洞
传入的file经过了一些过滤,但是没有过滤filter,我们可以用php://fileter来获取文件。构造url:http://00b5c733-809a-4aed-a498-27d306b09452.node3.buuoj.cn/secr3t.php?file=php://filter/convert.base64-encode/resource=flag.php
在这里插入图片描述

6.获取flag
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值