CTF WEB题

news/2025/3/18 1:58:31/

[文件包含,少许难度]

地址:攻防世界

代码审计WRONG WAY!
<?php
include("flag.php"); #包含了一个“flag.php”文件
highlight_file(__FILE__); #来显示当前文件的源代码
if(isset($_GET["file1"]) && isset($_GET["file2"])) #isset()是一个内置函数,用于检查变量是否存在且为非null。 检查是否设置了get参数“file1”和“file2” 且 有值
{
$file1 = $_GET["file1"]; #get传入一个"file1"赋值给$file1
$file2 = $_GET["file2"]; #get传入一个"file2"赋值给$file2
if(!empty($file1) && !empty($file2)) #检查是否“$file1和$file2” 都不为空
{
if(file_get_contents($file2) === "hello ctf") #(file_get_contents($file2) 是一个内置函数,用于将整个文件的内容读取到一个字符串中的函数调用,file2是一个文件路径。 这里是检查读取file2 文件中的内容 是否和"hello ctf" 完全相等
{
include($file1); # 满足上述条件,才可以执行 include($file1),出发文件包含漏洞,“$file1”的文件可以读取 “flag.php” 的内容
}
}
else
die("NONONO"); #否则,输出“NONONO”
}

详细介绍

(file_get_contents($file2) 一个内置函数,用来读取文件的内容,$file2 是包含文件路径的变量,file_get_contents 函数会打开该文件,并且将文件的所有内容会作为一个字符串返回,打开失败时,则返回false

最后包含file1,我们希望得到flag,获取内容,可以用filter读取

file1和 file2 要存在,且都不为空,file2 的内容为 hello ctf

因为file2 的内容为 hello ctf 可以用php://input 和data:// 进行绕过

 payload1:?file1=php://filter/read/convert.base64-encode/resource=flag.php&file2=data://text/plain,hello ctf  payload2:?file1=php://filter/read/convert.base64-encode/resource=flag.php&file2=php://input  

总结:

整体来说不难,主要是代码审计,配合文件包含php伪协议即可,多多重复,你也行!


http://www.ppmy.cn/news/1579952.html

相关文章

全国医院数据可视化分析系统

【大数据】全国医院数据可视化分析系统 &#xff08;完整系统源码开发笔记详细部署教程&#xff09;✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 &#x1f3e5; 项目名&#xff1a;医疗导航神器&#xff01;——《基于大数据的微医挂号网医院数据可视…

安装 oepn-webui报错 Cannot connect to host api.openai.com:443 ssl

一、发现问题 安装 open-webui 的报错 api.openai.com 不通&#xff0c;因为 open-webui 最新版和以前的不一样了&#xff0c;所以网上的很多资料都用不了&#xff0c;经过一番摸索&#xff0c;找到解决办法 另外如果发现浏览器打开之后白屏&#xff0c;则是因为后台正在配置…

路由器和网关支持边缘计算

路由器和网关可以支持边缘计算&#xff0c;但它们的功能和性能可能有所不同&#xff0c;具体取决于设备的设计和用途。以下是路由器和网关在边缘计算中的作用及其支持方式&#xff1a; 路由器在边缘计算中的作用 网络连接与数据传输 路由器主要负责在网络中传输数据包&#xff…

开源通义万相本地部署方案,文生视频、图生视频、视频生成大模型,支持消费级显卡!

开源通义万相本地部署方案&#xff0c;文生视频、图生视频、视频生成大模型&#xff0c;支持消费级显卡&#xff01; 万相2.1开源 近日&#xff0c;大模型万相2.1&#xff08;Wan&#xff09;重磅开源&#xff0c;此次开源采用Apache2.0协议&#xff0c;14B和1.3B两个参数规格…

【第4章】项目实战-亿级电商系统需求分析

1-14 项目背景介绍 项目基本背景 平台类型: B2B 电商平台年交易额: 超200亿元客户定位: 行业龙头企业项目规模: 历时: 1年以上总投入: 450人月费用等级: 千万级 业务背景解析 1. 平台业务模式演进 初始阶段 自营模式: 自有品牌商品完整生产链: 设计→生产→制造→销售主…

EasyCVR安防视频汇聚平台助力工业园区构建“感、存、知、用”一体化智能监管体系

在现代工业园区的安全管理和高效运营中&#xff0c;视频监控系统扮演着不可或缺的角色。然而&#xff0c;随着园区规模的扩大和业务的复杂化&#xff0c;传统的视频监控系统面临着诸多挑战&#xff0c;如设备众多难以统一管理、数据存储分散、智能分析能力不足、信息利用率低下…

java自带日志系统介绍(JUL)以及和Log4j 2、Logback、SLF4J不同日志工具的对比

Java 日志系统是开发中用于记录应用程序运行时信息的重要工具。以下是 Java 日志系统的核心组件及其使用场景、配置参数的详细介绍&#xff0c;以及不同日志系统的对比分析。 Java 日志系统核心组件 1. 日志记录器&#xff08;Logger&#xff09; 作用&#xff1a;负责生成日…

DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加列宽调整功能,示例Table14_09自定义单元格的固定表头表格

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加列宽调整功能,示例Table14_09自定义单元格…