前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[SWPUCTF 2021 新生赛]include解题思路

[SWPUCTF 2021 新生赛]include解题思路

原创
作者头像
Anime_Bucket
发布2023-01-02 16:18:44
1.3K0
发布2023-01-02 16:18:44
举报

我们看向这个题目的页面

他提示我们传入一个file,也就是我们可以直接在url里面进行get传参,我们传入一个url?file=1看看会返回什么

提示我们flag在flag.php里面,我们首先可以想到的是文件包含,然后我们看到了代码的第二行,allow_url_include:on

我们可以联想到php伪协议,这样我们就可以得到这一道题目的思路了。

使用php://filter读取到flag.php,将flag.php以base64的形式给显示出来,这样的话我们可以这样构造我们的payload

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

我们来解读一下上面的payload:

首先我们要传入file关键字的GET参数传递,php://是一种协议名称,php://filter是一种访问本地文件的协议,/read=convert.base64-encode表示的是读取的方式是base64编码后resouce=flag.php表示目标文件为flag.php

也就是说,flag.php最终会以base64的形式显示出来,我们最后使用base64解码就可以了。

理论存在,实践开始:

我们使用上面的payload

然后我们得到了一段base64,我们使用base64解密,因该就可以得到答案了

得到flag。

以上是本人的一套解题思路,如果有问题的话,请及时提出来,本人刚学习网络安全没有太久,可能内容有一些错误,大佬勿喷。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档