前提条件:
allow_url_fopen = ON(是否准许通过一个URL进行包含)
allow_url_include = ON
当php.ini配置文件中这两项都为ON的时候,就说明准许远程文件包含
关于php://input
通过抓包工具burpsuite我们将其修改为POST类型数据包,此时可以看到传入的参数为php://input实际上也就是请求包请求体的内容。
关于php://filter
allow_url_fopen = ON必须打开
例如:将文件中的数据进行base64加密之后再输出
Index.php?file=php://filter/read=convert.base64-encode/resource=test.php
关于data:text/plain
allow_url_fopen = ON、allow_url_include = ON都需要开启
用法1:?file=data:test/plain,<?php 执行的代码?>
用法2:?file=data:text/plain;base64,编码后的php代码
此时可以发现我们传入加密后的字符串同样可以被解析,这样可以在一定程度上躲过流量分析。(避免出现加号的影响,尽量是base64加密后的字符串不以加号结尾)
关于zip://伪协议
要求PHP版本>=5.3.0,因为需要将#编码为%23
用法:?file=zip://文件的压缩路径和压缩文件名#被压缩的目标文件名
支持绝对路径和相对路径
有没有小伙伴使用过多级压缩,有了解的话可以一起交流交流呀!
以上内容仅供参考!希望能对大家有一些帮助!有不对的地方,欢迎大家一起交流、探讨!喜欢的话就请点个赞,关注一下吧!!!
如果出现侵犯版权的情况请联系我!