BUUCTF——[极客大挑战 2019]Secret File 1

这道题其实“很简单”,鹅鹅鹅,这道题其实刚看的时候我以为是扫目录之类就能出成绩的,后来发现,唉,还是太年轻了,鹅鹅鹅,其实这道题到最后还是代码审计,只不过出题人很狗,他创造了剧情的伪造,所以导致很多人找不到正确的php文件,好了,进入环境
在这里插入图片描述
别问蒋璐源是谁,她是谁谁也不知道,这道题老规矩先看一下源代码中有没有什么有价值的信息
在这里插入图片描述
可以看见里面有一个名叫Archive_room.php的文件,我们点进去看一看
在这里插入图片描述
该界面是这样的,有一个按钮链接,可以点一下看一下是什么情况
在这里插入图片描述
可以看见这里作者在这里搞了一连串的剧情,但都是没有用的剧情,所以为了稳妥起见,我们还是抓包看吧,就从按钮哪里开始
在这里插入图片描述
这里可以发现,这里有一个被注释了的php文件,
在这里插入图片描述
然后我们点开这个php文件,哈哈哈,看看里面有什么有用的信息
在这里插入图片描述
好了,现在,代码审计开始了,唉,扎心了老铁,最烦的就是代码审计了
在这里插入图片描述
这里我解释一下吧,这里它利用了filter伪协议,该协议刚好就能够查看文件包含的漏洞,所以当我们利用该协议查看flag.php时,会将它的源代码爆出来,但是因为base64的加密原因,所以我们还需要进行一次base64解密,现在进行解密行为
在这里插入图片描述
在这里插入图片描述
好了,至此flag就出来了,该题结束!

### BUUCTF 极客挑战 2019 Secret File Writeup 解题思路 此题目属于文件包含漏洞(File Inclusion Vulnerability)类型的Web安全挑战。以下是详细的分析过程: #### 题目背景 通过F12查看网页源码,发现了隐藏的URL链接[^1]。点击页面中的按钮后跳转至另一页面,并进一步推测需要利用Burp Suite抓包工具捕获请求并分析返回的数据。 在抓包过程中,发现了一个PHP脚本的关键逻辑部分: ```php <?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 中 ?> ``` 这段代码的功能是对`$_GET['file']`参数进行过滤,防止用户输入特定字符串来访问敏感文件。然而,由于过滤条件不够严格,仍然可以通过构造特殊路径绕过限制[^3]。 #### 利用方法 目标是读取服务器上的 `flag.php` 文件内容。经过多次尝试以及参考其他选手的经验分享得知可以使用 `/secr3t.php?file=flag.php` 的方式成功获取Flag值[^4]。 最终提交正确答案即可完成该CTF题目解答流程。 ```bash curl http://example.com/secr3t.php?file=flag.php ``` 以上命令用于模拟向目标站点发送带有指定查询参数的HTTP GET 请求操作。 ### 注意事项 - 在实际渗透测试活动中,请务必遵循法律法规,在授权范围内开展工作。 - 学习此类技术主要用于提高个人网络安全意识及防护能力而非恶意攻击他人系统。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值