CMS上传图片文件安全问题

时间:2012-09-17 20:55:01

标签: php mysql file upload

如果有人能提供帮助,我会有一个简单的问题。我正在为客户建立一个CMS,他们可以登录,并更改存储在数据库中的内容(包括通过上传文件格式的图片)。

我的问题..我一直在研究,到处都说我需要将图像文件存储在根文件夹之外。在我的情况下,如果只有少数人会在管理面板中上传文件,他们必须首先登录该网站,这是否必要?通过确保文件类型,大小,扩展等等,我已经采取了客户端步骤...然后在将文件添加到我的数据库之前更改文件的名称...这是否足够安全,或者我要求解决问题这条路?

由于

1 个答案:

答案 0 :(得分:1)

将上传的内容存储在浏览器无法直接处理的地方通常是一个好主意。你不希望有人上传.php文件(或你忘记检查的其他格式),然后通过拉起直接网址来执行它。相反,你有一个传递文件的包装器脚本。

所以是的,这是一个好主意,但不是'必要'(通过词典的字典定义)。如果您认为管理区域是安全的,您当然可以选择 not 来执行此操作。

也就是说,在您描述的场景中,只要其唯一可以上传图像的管理员用户,我就不会认为这是一个巨大的交易。

不过,如果您还没有,请按文件标题或内容验证图片,而不是文件扩展名。