最常用的php://filter,用于读取文件/源码:http://127.0.0.1/xxx.php?file=php://filter/read=convert.base64-encode/resource=index.php(使用的过滤器是convert.base64-encode。它的作用就是读取index.php的内容进行base64编码后输出),然后base64解码得到源代码。
贴一个大佬讲的php://filter妙用。
https://www.leavesongs.com/PENETRATION/php-filter-magic.html
php://input,需要开启allow_url_include。将post请求的数据当作php代码执行。当传入的参数作为文件名打开时,可以将参数设为php://input,同时post想设置的文件内容,php执行时会将post内容当作文件内容。
利用zip或phar伪协议可以读取压缩包中的文件,解压的压缩包与后缀无关。
如将file.txt压缩成zip,改后缀为jpg绕过上传限制然后利用如下读取文件
/about.php?file=phar://./images/file.jpg/1.php
/about.php?file=zip://./images/file.jpg%231.php
PHP伪协议.png
网友评论