我希望允许我的用户将.php
个文件上传到服务器,但也希望确保这些文件对我的应用程序无害。
有什么建议吗?
谢谢。
答案 0 :(得分:6)
我建议'在uploads目录中禁用脚本执行'方法。这是唯一完全安全的解决方案。
只需将此规则添加到uploads目录中的.htaccess
文件:
php_value engine off
答案 1 :(得分:1)
选项1:使用不同的文件名存储它们并将原始文件名存储为元数据的一部分,例如在数据库表中。
选项2:禁用上传目录中的脚本执行。
选项3:将它们重命名为.phps(显示原始PHP的接受扩展名)
答案 2 :(得分:1)
一些解决方案:
答案 3 :(得分:0)
只是不执行它们,这就够了。
确保您的应用程序不会在任何时候运行或包含用户上传的文件(例如,使用GET参数include
文件而不进行任何卫生处理。
同时确保无法通过.php
扩展名从外部访问上传的文件。
在正常的,中途正确编码的工作流程中,上传的.php文件无论其包含哪些代码都不会带来安全风险。
答案 4 :(得分:0)
将上传目录分开,只写,从互联网上看不到(这会阻止他们在上传后访问自己的脚本)。
然后,您可以根据自己的需要调整新脚本。