我的PHP配置文件图像代码是否安全?

时间:2017-05-22 14:45:55

标签: php html image security upload

我正在为一个偏执的客户工作。我写过的图片上传者必须能够“生存”。一些雇佣人员的多次渗透测试。仅提供一些背景信息:图像仅用于个人资料图片。

所以,我得到了什么。我有一个HTML表单来上传文件,表单只能由登录用户访问。登录系统是安全的,不用担心。每个用户都获得一个唯一的用户ID,这是我用来识别不同用户的用户ID。

每当文件上传时,我都会对其进行以下检查:

  • 文件必须大于128个字节(停止ddossing)
  • 文件必须小于100 kb(图片将显示为64x64)

这两项检查均使用$_FILES["fileToUpload"]["size"]

完成
  • 文件的扩展名必须为' .png' (完成$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
  • 哑剧内容必须是" image / png" (完成mime_content_type($_FILES["fileToUpload"]["tmp_name"])
  • 该文件将重命名为$current_user->ID.".png"
  • 所有个人资料图片都存储在/ resources / img / profilepic / [userid] .png
  • 文件随move_uploaded_file
  • 移动
  • 图片的加载是在<img>个标签内完成的。获取完整句子(包括标签)的代码后来在另一个.php文件中为require&#39; d。

简而言之:文件以原文命名,但在[id] .png之后。我还没有找到解决这个问题的问题。

这是防弹吗?或者我现在的系统对于愿意上传网络外壳的人来说是一个很好的挑战?如果存在重大漏洞,我该如何保护自己免受攻击?

0 个答案:

没有答案