php://filter协议在任意文件读取漏洞(附例题)

news2024/11/25 3:23:14

php://filter

php://fiter 中文叫 元器封装,咱也不知道为什么这么翻译,目前我的理解是可以通过这个玩意对上面提到的php IO流进行处理,及现在可以对php的 IO流进行一定操作。

过滤器:及通过php://filter 对php 的IO流进行的具体操作

              格式为:php://filter / [read|write =] 过滤器 / resource= 目标文件 
        解释:对目标文件的IO流的输出流(read)或输入流(write)进行 过滤器的操作处理 

过滤器的分类

 string filter(字符过滤器)
                string.rot13  (对字符串执行 ROT13 转换)
                        例:php://filter/string.rot13/resource=flag.php
                string.toupper (转大写)
                        例:php://filter/string.toupper/resource=flag.php
                string.tolower (转小写)
                string.strip_tags (去除 HTML 和 PHP 标记,尝试返回给定的字符串 str 去除空字符、HTML 和 PHP 标记后的结果)
                        例:php://filter/string.strip_tags/resource=flag.php 
conversion filter (转换过滤器)
                convert.base64-encode & convert.base64-decode (base64加密 base64解密)
                        例:php://filter/convert.base64-encode/resource=flag.php
                convert.quoted-printable-encode & convert.quoted-printable-decode(在字符串后加=0A,及恢复)
        compression filter(压缩过滤)
                zlib.deflate & zlib.inflate(压缩 解压)
                        例:php://filter/zlib.deflate/resource=flag.php                                                       
                            php://filter/zlib.inflate/resource=flag.php
                bzip2.compress & bzip2.decompress(zip 压缩 解压)
 encryption filter(加密过滤器) 

题目:[SWPUCTF 2021 新生赛]include

打开题目,发现传一个file,发现flag在flag.php中

因为allow_url_include 状态为on,可知php伪协议,用filter读取flag.php里面的信息

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

发现是一段编码,base64解密

得到答案!

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

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

相关文章

React中父子组件参数传递讲解

文章目录 结合案例:github搜索案例1.父容器代码2.搜索Search子模块代码3.展示Lisi子模块代码 父子参数传递分析1.子(Search)传父(App)2.父(App)传子(List) 结合案例:github搜索案例 案例结果展示如下图 1.父容器代码 import React, { Component } fr…

经典浏览器の介绍

经典浏览器,这里给你介绍几款常见的浏览器: Google Chrome:Google Chrome是由Google开发的一款流行的浏览器。它以出色的性能和速度而闻名,能够快速加载网页。Chrome还支持大量的扩展和应用程序,可以个性化定制浏览器功…

二进制安全虚拟机Protostar靶场(2)基础知识讲解,栈溢出覆盖变量 Stack One,Stack Two

前言 Protostar靶场的安装和一些二进制安全的基础介绍在前文已经介绍过了,这里是文章链接 https://blog.csdn.net/qq_45894840/article/details/129490504?spm1001.2014.3001.5501什么是缓冲区溢出 当系统向缓冲区写入的数据多于它可以容纳的数据时,…

算法通关村第十九关——最小路径和

LeetCode64. 给定一个包含非负整数的 m n 网格 grid,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 输入:grid[[1,3,1],[1,5,1],[4,2,1]] 输出:7 解释:因为路径1→3→1→1→1的总和最小。 public int minPath…

交叉熵损失函数(Cross-Entropy Loss)

交叉熵损失函数(Cross-Entropy Loss)是在深度学习中常用的损失函数之一,它适用于分类问题。交叉熵损失函数的作用是衡量预测结果与真实标签之间的差距,从而用于模型的优化。 越接近真实标签,损失越小。在交叉熵损失函…

时序预测 | MATLAB实现LSSVM最小二乘支持向量机时间序列预测未来

时序预测 | MATLAB实现LSSVM最小二乘支持向量机时间序列预测未来 目录 时序预测 | MATLAB实现LSSVM最小二乘支持向量机时间序列预测未来预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现LSSVM时间序列预测未来(最小二乘支持向量机); 2.运行环境Mat…

VIRTIO-BLK代码分析(1)VIRTIO设备的模拟

VIRTIO设备的模拟是由QEMU实现的,它的具现化由函数virtio_device_class_init()实现。 VIRTIO PCI设备包含common/isr/device/notify BAR,QEMU模拟并注册这几个BAR MR,这里同时也注册read/write函数。 VIRTIO-BLK设备的具现化由函数virtio_blk…

974. 和可被 K 整除的子数组

974. 和可被 K 整除的子数组 C代码:滑动窗口 // 1、最长子数组 2、两个单调队列、求最大值-最小值,判断是否满足条件 3、满足记录长度 // 窗口移动条件:int longestSubarray(int* nums, int numsSize, int limit){int queMax[numsSize];in…

【C语言】文件操作(上)

一.什么是文件 文件是磁盘上的文件,文件中存放的数据不随程序的退出而销毁. 二.文件的打开与关闭 1.文件指针 每个被使用的文件都在内存中开辟了一个相应的文件信息区,用来存放文件的相关信息(如文件的名字,文件状态及文件当前的位置等&…

包管理工具--》npm的配置及使用(二)

在阅读本篇文章前请先阅读包管理工具--》npm的配置及使用(一) 目录 🌟语义版本 避免还原的差异 npm的差异版本处理 🌟npm 脚本 (npm scripts) 🌟运行环境配置 在node中读取package.json …

l8-d7 实现TCP通信

一、TCP服务器的实现(理论) #include <sys/types.h> #include <sys/socket.h> int socket(int domain, int type, int protocol); -domain: 指定通信域&#xff08;通信地址族&#xff09;; -type: 指定套接字类型; -protocol: 指定协议; 套接字类型与协议 -type:…

0925hw

1.登录账号密码 void sign_in(FILE *fp)//注册 {char usrname[10];char pwd[12];printf("输入账户:");scanf("%s",usrname);printf("输入密码:");scanf(" %s",pwd);fprintf(fp,"%s %s\n",usrname,pwd);printf("注册成…

postgresql-常用日期函数

postgresql-常用日期函数 简介计算时间间隔获取时间中的信息截断日期/时间创建日期/时间获取系统时间时区转换 简介 PostgreSQL 提供了以下日期和时间运算的算术运算符。 获取当前系统时间 select current_date,current_time,current_timestamp ;-- 当前系统时间一周后的日…

Spring——Spring IOC原理

摘要 IoC 不是一种技术&#xff0c;只是一种思想&#xff0c;一个重要的面向对象编程的法则&#xff0c;它能指导我们如何设计出松耦合、更优良的程序。传统应用程序都是由我们在类内部主动创建依赖对象&#xff0c;从而导致类与类之间高耦合&#xff0c;难于测试&#xff1b;…

电脑dll修复精灵下载,一键修复(win系统)MSVCP100/110/120/140.dll丢失方法

今天&#xff0c;我将为大家分享关于电脑vcruntime140.dll丢失的5种修复方法。在我们的日常生活中&#xff0c;电脑出现问题是常有的事&#xff0c;而vcruntime140.dll丢失则是其中较为常见的一种问题。那么&#xff0c;什么是vcruntime140.dll?它有什么作用&#xff1f;又有多…

如何从任何苹果、Windows或安卓设备访问iCloud照片

本文介绍了如何在各种设备上访问iCloud照片库,包括iPhone和iPad、Mac、Windows PC和Android设备。说明适用于iOS 13及以上版本、iPadOS 13及以上、macOS Big Sur(10.16)和Catalina(10.15)、Windows 10或11以及Android 10。 从iPhone、iPod Touch和iPad访问iCloud照片 照…

Spring Boot @Validated 和Javax的@Valid配合使用

一、Validated 和Valid有什么用 Validation 和Valid 常常配合使用对传输的参数进行数据校验的注解&#xff0c;并通过配置全局异常处理器进行合理化的提示&#xff0c;增加用户的体验 并且Validated可以通过分组来指定什么时候触发什么样的参数校验&#xff08;这里看一下就行…

基于FPGA的FIR数字滤波器设计(quartus和vivado程序都有)。

基于FPGA的FIR数字滤波器设计&#xff08;quartus和vivado程序都有&#xff09;。 附&#xff1a; 1.配套quartus从MATLAB系数生成直到仿真成功说明文档。 2.配套仿真出波形&#xff08;图1&#xff09;的视频。

ShareCRM罗一立:立足香港联通国际,出海正当时

IDC数据显示&#xff0c;2022年中国企业级应用SaaS市场规模达41.6亿美元&#xff1b;而根据另一组数据&#xff0c;同一年全球SaaS市场规模已突破千亿美元。 一边是国内趋于白热化的竞争环境&#xff0c;一边是拥有广阔市场空间的海外“流奶与蜜之地”。近两年&#xff0c;出海…

手写Mybatis:第14章-解析和使用ResultMap映射参数配置

文章目录 一、目标&#xff1a;ResultMap映射参数二、设计&#xff1a;ResultMap映射参数三、实现&#xff1a;ResultMap映射参数3.1 工程结构3.2 ResultMap映射参数类图3.3 添加类型处理器3.3.1 日期类型处理器3.3.2 类型处理器注册机 3.4 存放映射对象3.4.1 结果标志3.4.2 结…