ctfhub文件包含

news2024/9/25 17:16:56

文件包含

url

http://challenge-41cbfbe04828b338.sandbox.ctfhub.com:10800/

构造url,利用hackabar进行Post data修改测试

http://challenge-41cbfbe04828b338.sandbox.ctfhub.com:10800/?file=shell.txt
ctfhub=system("ls");

ctfhub=system("ls /"); //查看根目录

ctfhub=system("cat /flag"); //查看flag

php://input

burp抓包构造payload

<?php system("ls");?>

查看根目录

查看flag文件

远程包含

开启靶场访问页面

可能存在文件包含漏洞

点击phpinfo,查看allow的两个选项是否开启

抓包测试

发送到repeter模块,构造payload

查看文件
<?php system("ls /"); ?>

查看flag文件内容,找到flag

读取源代码

查看页面

构造url读取flag

http://challenge-706aaf4604cfa60f.sandbox.ctfhub.com:10800/?file=php://filter/resource=/flag
  1. 基本结构
    • http://challenge-706aaf4604cfa60f.sandbox.ctfhub.com:10800/:这是目标服务器的基本URL。
    • ?file=:这是一个查询参数,表明我们要访问某个文件。
  1. 流封装器部分
    • php://filter/:这是PHP的流封装器,用于应用不同的过滤器来操作流数据。
  1. 过滤器部分
    • resource=:这是php://filter封装器的一种模式,表示要对指定的资源应用过滤器。
    • /flag:这是实际的文件路径,表明我们想要读取的文件是/flag

详细分析:

  • php://filter
    • PHP中的php://filter流封装器允许我们在读取或写入数据时应用过滤器。
    • 通常,我们会在php://filter之后指定过滤器(如base64编码、转换为字符串等),然后指定资源。
  • resource=/flag
    • 这里没有指定具体的过滤器,仅使用resource=,意思是直接访问资源文件。
    • 目标文件是/flag,这个文件通常存储在服务器上,需要通过某种方式读取其内容。

实际读取过程:

  • 当服务器处理这个URL时,它会解析file参数并使用指定的流封装器。
  • php://filter/resource=/flag会被解释为:直接访问并读取/flag文件的内容。

假设服务器没有进一步的安全检查或限制,直接访问这个URL将导致服务器读取并返回/flag文件的内容。这样就可以通过浏览器或其他HTTP客户端看到/flag文件的内容,通常这个文件包含一些敏感信息,比如CTF比赛中的flag。

示例流程:

  1. 你访问这个URL。
  2. 服务器收到请求,解析查询参数file=php://filter/resource=/flag
  3. 服务器使用PHP的流封装器读取/flag文件的内容。
  4. 文件内容作为HTTP响应的主体返回给你。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1989085.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【漏洞复现】常见框架漏洞复现 合集

Web框架(Web framework)或者叫做Web应用框架(Web application framework)&#xff0c;是用于进行Web开发的一套软件架构。大多数的Web框架提供了一套开发和部署网站的方式。为Web的行为提供了一套支持支持的方法。使用Web框架&#xff0c;很多的业务逻辑外的功能不需要自己再去…

HexView 刷写文件脚本处理工具-基本功能介绍(三)-导出S19/HEX

菜单 导出(Export) 此项目将一系列不同的选项组合在一起,用于将内部数据存储为不同的文件格式。每种导出都可以包含一些选项,以调整输出信息。 导出为S-Record格式(Export as S-Record) Motorola S-Record格式导出数据。 记录类型将根据最高地址信息的长度自动选择。…

Android平台如何不推RTMP|不发布RTSP流|不实时录像|不回传GB28181数据时实时快照?

技术背景 我们知道&#xff0c;Android平台不管RTMP推送、轻量级RTSP服务模块还是GB28181设备接入模块&#xff0c;早期&#xff0c;如果需要实现截图功能&#xff0c;又不想依赖Android系统接口&#xff0c;最好的办法是&#xff0c;在底层实现快照截图。 快照截图&#xff…

YOLOv8由pt文件中读取模型信息

Pytorch的pt模型文件中保存了许多模型信息&#xff0c;如模型结构、模型参数、任务类型、批次、数据集等 在先前的YOLOv8实验中&#xff0c;博主发现YOLOv8在预测时并不需要指定任务类型&#xff0c;因为这些信息便保存在pt模型中&#xff0c;那么&#xff0c;今天我们便来看看…

SpringBoot外部配置文件来修改jar包属性

在jar包所在的文件夹内创建application.yml配置文件&#xff1a; 在yml文件内部添加想要修改的属性值就可以了。 随后输入下面命令来运行jar包&#xff1a; java -jar Big-Deal-Boot-0.0.1-SNAPSHOT.jar 下图是优先级顺序&#xff0c;从上往下依次变高&#xff1a;

Linux Shell编程--变量

前言&#xff1a;本博客仅作记录学习使用&#xff0c;部分图片出自网络&#xff0c;如有侵犯您的权益&#xff0c;请联系删除 变量&#xff1a; bash作为程序设计语言和其它高级语言一样也提供使用和定义变量的功能 预定义变量、环境变量、自定义变量、位置变量 一、自定义变…

【Java 第十二篇章】SpringMVC 呜呜,为啥现在面试会问呢

一、简介 Spring MVC 是 Spring 框架的一个模块&#xff0c;用于构建 Web 应用程序&#xff0c;它遵循模型 - 视图 - 控制器&#xff08;MVC&#xff09;设计模式。 二、Spring MVC 的核心组件 1、DispatcherServlet 这是 Spring MVC 的前端控制器&#xff0c;它是整个框架…

Spring Boot获取Bean的三种方式

​ 博客主页: 南来_北往 系列专栏&#xff1a;Spring Boot实战 引言 在Spring Boot中&#xff0c;Bean是一个由Spring IoC容器管理的对象。 Spring Bean是在Spring IoC容器中被实例化、组装和管理的对象&#xff0c;可以视为Spring应用的构建块。它通过提供一套丰富的注…

Centos7安装Zabbix5.0的yum安装失败的解决方案

目前由于Centos7停服以及Zabbix官方限制了其5.0版本在Centos7上安装服务版本&#xff0c;因此可能会导致安装Zabbix5.0的一些组件无法正常安装。 zabbix5.0安装参考&#xff1a;一、zabbix 5.0 部署_zabbix5.0部署-CSDN博客 问题现象 当安装到zabbix的GUI包时报如下错误&…

护眼灯真的可以护眼吗?五款专业护眼灯品牌在线分析

很多新手小白在选购护眼台灯前&#xff0c;都会思考哪个护眼台灯的效果比较好这个问题&#xff0c;因为有的无良商家因为想要降低成本&#xff0c;使用一些廉价低劣的处理器&#xff0c;台灯的电压和功率都难以保证&#xff0c;有的甚至会产生有害的辐射&#xff0c;对人体的健…

Unity入门3——脚本入门

本文使用的代码编辑器为VSCode 安装接口有&#xff1a; 通过将变量设置为public&#xff0c;可以直接在unity的Inspector面板中看到相关变量。此时可直接将需要的素材拖拽到变量处。 Awake()方法 只要物体被加到场景就会执行一次

【vue3】【elementPlus】【国际化】

1.如需从0-1开始&#xff0c;请参考 https://blog.csdn.net/Timeguys/article/details/140995569 2.使用 vue-i18n 模块&#xff1a; npm i vue-i18n3.在 src 目录下创建 locales 目录&#xff0c;里面创建文件&#xff1a;en.js、zh-cn.js、index.js 语言js文件&#xff1a;…

ICC2:检查漏tree的脚本

我正在「拾陆楼」和朋友们讨论有趣的话题&#xff0c;你⼀起来吧&#xff1f; 拾陆楼知识星球入口 前面写了innovus检查clock 漏tree的脚本&#xff0c;ICC2的脚本也相差不多&#xff0c;只需要替换少部分命令就行。原理就是检查clock pin有没有clock 定义。 foreach pin [ge…

JavaSE之常用API大全

API大全 一、Object toString 返回这个对象的字符串表示形式 当输入一个引用类型的时候,会自动调用该对象的toString方法 默认的toString方法是: 包名.类名十六进制值 Equals 用于比较两个对象是否相同,默认比较内存地址 “”:比较基本类型的时候,比较的是值的大小,而比较引用…

光伏气象站会对环境产生影响吗?

在探讨光伏气象站对环境的影响时&#xff0c;我们首先要明确其核心功能和运作原理。光伏气象站&#xff0c;作为集光伏发电与气象监测于一体的设备&#xff0c;其主要作用在于为光伏电站提供精准的气象数据支持&#xff0c;并辅助电站优化运行&#xff0c;提高发电效率。 从环境…

互联网之光与人工智能之光交相辉映,如何抓住5G人工智能红利

一、互联网之光闭幕 第六届世界互联网大会“互联网之光”虽然已经闭幕&#xff01;“科学与技术”“产业与经济”“人文与社会”“合作与治理”等4大板块20个分论坛&#xff0c;为5G人工智能时代提出了一个新的问题&#xff1a;5GAI 交相辉映&#xff0c;抓住5G人工智能红利&am…

George Danezis谈Mysticeti的吞吐量和低延迟

Sui的新共识引擎Mysticeti已经在主网上开始分阶段推出。Mysten Labs联合创始人兼首席科学家George Danezis在采访中&#xff0c;解释了吞吐量和延迟的区别&#xff0c;以及Sui上的Mysticeti如何结合这两者。 采访视频&#xff1a;https://youtu.be/A4vtyE8obXQ 中文译文&…

【前缀异或和】力扣2588. 统计美丽子数组数目

给你一个下标从 0 开始的整数数组nums 。每次操作中&#xff0c;你可以&#xff1a; 选择两个满足 0 < i, j < nums.length 的不同下标 i 和 j 。 选择一个非负整数 k &#xff0c;满足 nums[i] 和 nums[j] 在二进制下的第 k 位&#xff08;下标编号从 0 开始&#xff0…

1.数据加载时 暂无数据会晃一下再显示数据 2.判断图片加载失败后渲染占位图

工作中问题小记 这种问题正常来说都没有记录的意义 但是我是强迫症 hhh 1.在正常数据渲染时 如果为空我们会渲染(暂无数据占位图)来提示用户 通常是用数据长度来判断 但是他在刷新的时候会先弹出 <暂无数据> 的提示再显示那个数据 解决方法: 搞个标识符 必须等他请求完接…

【电控笔记z14z16】增加霍尔元件分辨率

霍尔传感器用的不多?实际增量编码器更好 z14 假设60度内速度不变 z16(更简单的方法)BLDC