首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP文件管理器上传/阻止PHP文件

问PHP文件管理器上传/阻止PHP文件
EN

Stack Overflow用户
提问于 2021-10-04 09:47:14
回答 1查看 303关注 0票数 0

我搜索过各种"PHP上传安全性“帖子,特别是关于阻止PHP文件上传的帖子,但是似乎没有明确的方法来防止伪装的PHP文件从具有文件重命名功能的"filemanager"-like应用程序中上载。如果我错了,请纠正我。

当然,上传时可以检查扩展名和mime类型。但是,用户可以轻松地上传"index.html“(包含一些PHP),然后将其重命名为"index.php”,因此这似乎不能提供很大的安全性。当然,可以防止将文件重命名为"*.php",但这似乎充其量是脆弱的。

当然,最终的解决方案是在存储文件的目录中禁用PHP执行。但是,filemanager应用程序将被分发,我只能向服务器所有者推荐,而不是强制执行。

任何反馈都很感激。仅供参考,我指的是一个分布式PHP filemanager应用程序,因此我无法控制服务器环境(除了提供建议)。filemanager允许重命名文件,用户通常希望上传大多数文件类型(不包括php)。

EN

回答 1

Stack Overflow用户

发布于 2021-10-04 09:58:01

上传的文件应该只上传文件-资产或静态文件-。您不应该使用PHP运行它,即使您需要允许您的用户上传一个文件(假设他自己的css用于他的自定义配置文件),这个文件应该只作为一个静态文件加载。

例如,在nginx中:

代码语言:javascript
复制
server {
    // ....

    location ~ \.php$ {
        try_files $uri =404;
        // ...
    }

    location ~* \.(js|css|jpg|jpeg|gif|png|tgz|gz|rar|bz2|doc|pdf|ppt|tar|wav|bmp|rtf|swf|ico|flv|txt|woff|woff2|svg)$ {
        // rest of configurations;
    }

    // ....
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69433929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档