php伪协议

打印 上一主题 下一主题

主题 1515|帖子 1515|积分 4545

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
PHP 伪协议(PHP Stream Wrapper)

PHP 的伪协议(Protocol Wrapper)是一种机制,答应开辟者通过统一的文件访问函数(如 file_get_contents、fopen、include 等)访问不同类型的数据源,包罗本地文件、长途资源、内存数据、压缩包等。

原理分析

PHP 伪协议本质上是对路径的一种特殊格式扩展,它将以特定协议开头的路径重定向到不同的数据处置惩罚器。比方:
  1. file_get_contents("php://input");
复制代码
上述代码读取的不是文件,而是 HTTP 请求体的原始内容。

常见伪协议分类及功能

伪协议功能分析file://默认本地文件访问,可省略 file:// 前缀php://filter对文件内容举行过滤,如编码转换(如 base64)php://input读取原始 POST 请求体数据php://memory / php://temp利用内存/暂时文件作为读写流data://读取内联数据,适用于直接包罗字符串内容zip://访问 zip 压缩包中的文件phar://访问 Phar 存档文件内容glob://利用通配符举行文件匹配http:// / https://长途网页数据读取(依靠 allow_url_fopen)ftp://读取长途 FTP 文件expect://执行 shell 命令(高危,默认禁用)
常见利用场景及用法

1. php://filter 读取源码(常用于 CTF)

读取 PHP 文件并举行 base64 编码:
  1. file_get_contents("php://filter/convert.base64-encode/resource=index.php");
复制代码
可用于源码查看或绕过 Web 服务对 .php 文件的访问限制。

2. php://input 读取原始 POST 数据

  1. $raw = file_get_contents("php://input");
复制代码
适用于接收非标准 Content-Type 的 POST 数据,好比上传 Webshell 绕过限制。

3. data:// 内联数据作为代码包罗

  1. include("data://text/plain,<?php phpinfo(); ?>");
复制代码
可以直接把一段字符串当作 PHP 文件执行,常用于代码注入场景。

4. zip:// 读取压缩包内的文件

  1. file_get_contents("zip://shell.zip#shell.php");
复制代码
配合文件上传漏洞利用,将 PHP 文件嵌入 zip 包中,绕过后缀检测。

5. phar:// 配合反序列化漏洞利用

  1. include("phar://shell.jpg");
复制代码
Phar 文件在被剖析时会自动触发反序列化逻辑,可用于 POP 链触发。

安全风险

PHP 伪协议可被滥用,尤其是在存在以下漏洞时:


  • 本地文件包罗(LFI)
  • 长途文件包罗(RFI)
  • 反序列化(Phar 利用)
  • 文件上传(zip 包绕过)
  • 恣意文件读取(结合 filter)
攻击者可以利用伪协议读取敏感信息、执行恣意代码、走漏源码等。

示例:利用 LFI + php://filter 获取源码

  1. <?php
  2. include($_GET['file']);
复制代码
访问:
  1. ?file=php://filter/convert.base64-encode/resource=flag.php
复制代码
结果为 flag.php 文件的 base64 编码内容。

总结表

类型示例功能分析本地文件file://index.php常规文件读写网络访问http://example.com获取长途网页数据输入流php://input获取原始 POST 数据编码过滤php://filter/convert.base64-encode/resource=index.php获取源码并 base64 编码输出内联数据data://text/plain,<?php phpinfo(); ?>执行/包罗内嵌内容压缩包zip://shell.zip#shell.php访问 zip 包中的 PHP 文件Phar 文件phar://shell.jpg利用 Phar 举行反序列化利用


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张国伟

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表