详解php://filter--理论

什么是php://filter?

是PHP伪协议的一种,常用于文件包含漏洞。

php:// 用于访问输入/输出流。

filter 意为过滤器,用于在访问数据流之前对数据进行过滤。

php://filter的功能就是访问数据流,并对其进行过滤操作。

使用方法

这是php://filter的基本形式:

复制代码
php://filter/resource=flag.php  //文件形式的数据流
php://filter/resource=https://blog.csdn.net  //URL形式的数据流

这种形式中,只包含了一个参数resource(该参数是必须的)

参数的值 是我们要访问的 文件形式的数据流URL形式的数据流

用于过滤的参数 read(该参数是可选的):

复制代码
php://filter/read=convert.base64-encode/resource=flag.php
php://filter/convert.base64-encode/resource=flag.php  //read也可以省略不写

该参数的值作用是:将读取的文件的内容以base64加密的形式输出。

read参数的值就是我们要使用到的过滤器

常用过滤器

复制代码
convert.base64-encode:
php://filter/convert.base64-encode/resource=<目标文件名> //base64编码读取文件内容

string.rot13:
php://filter/read=string.rot13/resource=<目标文件名> //rot13编码后读取文件内容

convert.iconv.<input-encoding>.<output-encoding> :
php://filter/convert.iconv.utf-8.utf-7/resource=<目标文件名> //将utf8编码转换utf7编码
php://filter/convert.iconv.utf8.utf16/resource=<目标文件名> //将utf8编码转换utf16编码

<input-encoding><output-encoding>可以选取的编码形式有:

复制代码
UCS-4*
UCS-4BE
UCS-4LE*
UCS-2
UCS-2BE
UCS-2LE
UTF-32*
UTF-32BE*
UTF-32LE*
UTF-16*
UTF-16BE*
UTF-16LE*
UTF-7
UTF7-IMAP
UTF-8*
ASCII*
EUC-JP*
SJIS*
eucJP-win*
SJIS-win*
ISO-2022-JP
ISO-2022-JP-MS
CP932
CP51932
SJIS-mac (alias: MacJapanese)
SJIS-Mobile#DOCOMO (alias: SJIS-DOCOMO)
SJIS-Mobile#KDDI (alias: SJIS-KDDI)
SJIS-Mobile#SOFTBANK (alias: SJIS-SOFTBANK)
UTF-8-Mobile#DOCOMO (alias: UTF-8-DOCOMO)
UTF-8-Mobile#KDDI-A
UTF-8-Mobile#KDDI-B (alias: UTF-8-KDDI)
UTF-8-Mobile#SOFTBANK (alias: UTF-8-SOFTBANK)
ISO-2022-JP-MOBILE#KDDI (alias: ISO-2022-JP-KDDI)
JIS
JIS-ms
CP50220
CP50220raw
CP50221
CP50222
ISO-8859-1*
ISO-8859-2*
ISO-8859-3*
ISO-8859-4*
ISO-8859-5*
ISO-8859-6*
ISO-8859-7*
ISO-8859-8*
ISO-8859-9*
ISO-8859-10*
ISO-8859-13*
ISO-8859-14*
ISO-8859-15*
ISO-8859-16*
byte2be
byte2le
byte4be
byte4le
BASE64
HTML-ENTITIES (alias: HTML)
7bit
8bit
EUC-CN*
CP936
GB18030
HZ
EUC-TW*
CP950
BIG-5*
EUC-KR*
UHC (alias: CP949)
ISO-2022-KR
Windows-1251 (alias: CP1251)
Windows-1252 (alias: CP1252)
CP866 (alias: IBM866)
KOI8-R*
KOI8-U*
ArmSCII-8 (alias: ArmSCII8)
相关推荐
运维行者_43 分钟前
网络流量分析入门:从流量监控与 netflow 看懂核心作用
运维·开发语言·网络·云原生·容器·kubernetes·php
catchadmin1 小时前
成为高级 PHP 开发者需要的思维转变
开发语言·php
JaguarJack1 小时前
前后端分离框架 CatchAdmin V5 beta.2 发布 插件化与开发效率的进一步提升
后端·php·laravel
BingoGo1 小时前
前后端分离框架 CatchAdmin V5 beta.2 发布 插件化与开发效率的进一步提升
后端·开源·php
黑客-小千2 小时前
【Docker】初识docker 基本概念及安装使用(巨详细版),网络安全零基础入门到精通实战教程!
网络协议·tcp/ip·web安全·网络安全·docker·容器·eureka
zd8451015002 小时前
[LWIP] LWIP热插拔功能 问题调试
开发语言·php
酷柚易汛13 小时前
酷柚易汛ERP 2025-12-26系统升级日志
java·前端·数据库·php
旧梦吟16 小时前
脚本网站 开源项目
前端·web安全·网络安全·css3·html5
CRMEB-嘉嘉17 小时前
CRMEB私域会员电商系统pro-用户等级
php
白帽子黑客杰哥17 小时前
网络安全面试指南
web安全·网络安全·面试·渗透测试·面试技巧