首页 > 编程语言 >PHP文件包含伪协议

PHP文件包含伪协议

时间:2024-10-01 21:01:14浏览次数:9  
标签:文件 convert php UTF 包含 url base64 allow PHP

PHP文件包含伪协议

支持伪协议的函数

include()
require()
include_once()
require_once()
highlight_file ()
show_source ()
readfile()
file_get_contents ()
fopen()
file()

1.php://input


使用条件:

  • php版本>=5.2
  • allow_url_fopen == off/on
  • allow_url_include == on

2.php://filter


使用条件:

  • php版本>=5.2
  • allow_url_fopen == on/off
  • allow_url_include == on/off
    使用方法:
    读:php://filter/read=convert.base64-encode/resource=文件名
    写:php://filter/write=convert.base64-encode/resource=文件名
    过滤器:
    1.字符串过滤器(string.*)
    • string.rot13:进行rot13加解密
    • string.toupper:字母转大写
    • string.tolower:字母转小写
    • string.strip_tags(PHP 7.3.0 起废弃):去除HTML和PHP中的内容

2.转换过滤器(convert.*)

  • base64-encode & convert.base64-decode:进行base64加密解密
  • convert.quoted-printable-encode & convert.quoted-printable-decode:在字符串后面加=0A
  • convert.iconv.* :进行编码直接转换
    语法:convert.iconv.<input-encoding>.<output-encoding> 或 convert.iconv.<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*
    详细见:https://www.php.net/manual/en/mbstring.supported-encodings.php
    3.压缩过滤器(zlib.* & bzip2.*)
    *zlib.deflate & zlib.inflate 进行压缩和解压
    *bzip2.compress & bzip2.decompress 上述相同
    4.加密过滤器(PHP 7.1.0 起废弃)
  • mcrypt.*
  • mdecrypt.*

3.file://


使用条件:

  • php版本>=5.2
  • allow_url_fopen == on/off
  • allow_url_include == on/off

4.data://


使用条件:

  • php版本>=5.2
  • allow_url_fopen == on
  • allow_url_include == on
    语法
    data://text/plain;base64,poc
    data://text/plain,poc

标签:文件,convert,php,UTF,包含,url,base64,allow,PHP
From: https://www.cnblogs.com/capybaras/p/18343295

相关文章

  • python 包含有引号和花括号的字符串的格式化
    replace不起作用;update_per_seconds="30"uploadtime_per_seconds="30"imei_string="1234"###采用{0}format不行###下面replace不行msg="""{"rmtcmd":"set","dev":{"poll":{&......
  • 将ASD光谱仪的.asd文件转为文本文件
      本文介绍基于ViewSpecPro软件,将ASD地物光谱仪获取到的.asd格式文件,批量转换为通用的.txt文本格式文件的方法。  ASD光谱仪是英国MalvernPanalytical公司研发的系列野外便携式全范围光谱辐射仪和光谱仪,可以获取地物的实时光谱信息。我们用这一系列中的设备产品对地物的光......
  • Windows批处理文件编写指南
    有时候为了提高效率,我们可以将一些DOS命令写在一个批处理文件中集中运行和处理,下面介绍一下编写一个批处理文件的必要步骤和知识:1、首先需要用编辑器或记事本创建一个普通文件2、根据功能编写指令,基础常用命令如下:@echooff:关闭命令回显,这样在执行命令时不会显示命令本身ec......
  • go开发中, 按日志大小滚动存储日志文件
    代码如下:packagemainimport("github.com/sirupsen/logrus""gopkg.in/natefinch/lumberjack.v2")funcinitLogger(logSettingUtils.LogObj)*logrus.Logger{logger:=logrus.New()//使用lumberjack提供的Logger作为logrus的输出......
  • 如何用find找到所有24字节大小的txt文件并删除?
    在Linux中,可用一条命令解决:find.-name"XX*.txt"-size24c-typef-print-execrm-f{}\;这条命令的作用是在当前目录及其子目录下查找文件名以“XX”开头、文件大小为24字节、文件类型为普通文件的“.txt”文件,并将查找到的文件打印出来,然后执行删除操作。以下是对命令中......
  • 加解密demo(java、php)
    数据格式*@paramargs*撞库---入参加密字段signs加密前格式**{*"mobileMask":"134123412**",*"city":"武汉",*"system":"qxh"*}**撞库---返回加密字......
  • php的urlencode和rawurlencode区别
    urlencode和rawurlencode都是用于对URL进行编码的函数,但它们在处理方式和应用场景上存在明显的区别。以下是关于这两个函数的详细比较:一、定义与标准urlencode:基于rawurlencode标准,但有略微的不同,它定义在rfc1866,这个rfc属于html标准的一部分,编码方式和application/x-www-for......
  • PHP中的PEAR是什么
    PHP中的PEAR是PHPExtensionandApplicationRepository的缩写,即PHP扩展与应用库。它是一个PHP扩展及应用的代码仓库,提供了许多常用的PHP库和工具,涵盖了页面呈现、数据库访问、文件操作、数据结构、缓存操作、网络协议、WebService等许多方面。一、PEAR的功能与特点提供丰富......
  • Linux(三)文件管理、复杂操作与实用工具详解
    Linux学习笔记(三)文件管理、复杂操作与实用工具详解Linux学习笔记(二):深入理解用户管理、运行级别与命令行操作1.文件操作的基本操作1.1创建创建目录mkdir:创建目录mkdir/home/dog#创建单级目录mkdir-p/home/animal/tiger#创建多级目录,如果父目录不存在,将连......
  • SpringBoot + ITextPdf:高效生成 PDF 预览文件
    问过神奇的chatgpt后,了解到iTextPdf这个库,应该是比较好的选择。解决方案我们先观察下真实的开票预览的模板。发票信息由两部分组成:固定信息,例如购买方信息、销售方信息。商品信息,可能有多行,需动态填充很明显的一个主子结构。了解了一下iTextPdf的相关api。要实现这个功能,其实我们需......