使用php伪协议的前提
php.ini中的allow_url_fopen 、allow_url_include这两个参数需要修改为on
1.file协议
使用file协议读取Windows的系统文件
http://127.0.0.1/123.php?cmd=file:///c:/windows/system32/drivers/etc/hosts

2.php://filter协议
使用php://filter协议可以将php代码进行base64编码后显示出来

3.php://input
使用php://input协议可以将post请求的数据作为php代码运行
访问该协议并进行抓包

修改为post请求

修改参数内容

然后在下面输入php代码

可以发现php代码会被执行

4.data://
使用data://协议可以将数据直接嵌入url中
http://127.0.0.1/123.php?cmd=data:text/plain,<?php phpinfo(); ?>

5.zip://
使用zip://协议可以查看压缩包中的文件
?cmd=zip://d:/www.zip/flag_2376629629.txt
我这里访问的是d盘下的www.zip压缩包下的flag文件


6.phar://
使用phar://可以直接读取压缩包的内容
?cmd=phar://d:/www.zip/flag_2376629629.txt



















