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

这道题其实“很简单”,鹅鹅鹅,这道题其实刚看的时候我以为是扫目录之类就能出成绩的,后来发现,唉,还是太年轻了,鹅鹅鹅,其实这道题到最后还是代码审计,只不过出题人很狗,他创造了剧情的伪造,跟着剧情走

看一下源码(Ctrl+u),有个链接

还有继续套下去

到底了,抓个包看看抓包可以看到在action.php有个提示是secr3t.php,进去看看

来吧展示,出代码了。是一个文件包含漏洞,用filter协议不会触发他的判断条件

?file=php://filter/read=convert.base64-encode/resource=flag.php

得到一个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 请求操作。 ### 注意事项 - 在实际渗透测试活动中,请务必遵循法律法规,在授权范围内开展工作。 - 学习此类技术主要用于提高个人网络安全意识及防护能力而非恶意攻击他人系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值