allow_url_fopen = ON(是否答应通过一个URL进行包含)
allow_url_include = ON
当php.ini配置文件中这两项都为ON的时候,就解释答应远程文件包含

关于php://input
例如:文件中涌现include函数,且传入的参数可以掌握
通过抓包工具burpsuite我们将其修正为POST类型数据包,此时可以看到传入的参数为php://input实际上也便是要求包要求体的内容。
可以看到,我们在要求体中加入了phpinfo(),在返回的结果中被成功的实行,实现了代码实行的效果
此时我们利用蚁剑进行连接,设置好传入的POST要求体。
可以看到可以连接成功,但是当点击链接的时候,便涌现了错我,有知道的小伙伴可以在评论中指出!
感激啦!
关于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://文件的压缩路径和压缩文件名#被压缩的目标文件名
支持绝对路径和相对路径
相对路径
绝对路径
同时可以看到,不受压缩包文件格式限定
有没有小伙伴利用过多级压缩,有理解的话可以一起互换互换呀!
以上内容仅供参考!
希望能对大家有一些帮助!
有不对的地方,欢迎大家一起互换、磋商!
喜好的话就请点个赞,关注一下吧!
!
!
如果涌现陵犯版权的情形请联系我!