Home >Backend Development >PHP Tutorial >php 如何确保上传图片的安全

php 如何确保上传图片的安全

WBOY
WBOYOriginal
2016-06-06 20:42:321448browse

平时我发现,有很多网站都不提供gif图片的上传,之前在对网站进行安全检查的时候也发现了一些gif图片中暗藏代码,竟然还可以执行!
记得我用文本编辑器打开图片,在图片的最后,发现了php的一句话木马,我想请问,这类问题如何解决?
如果保证/防范图片(或文件)上传中可能存在的安全隐患?

敬谢!

回复内容:

平时我发现,有很多网站都不提供gif图片的上传,之前在对网站进行安全检查的时候也发现了一些gif图片中暗藏代码,竟然还可以执行!
记得我用文本编辑器打开图片,在图片的最后,发现了php的一句话木马,我想请问,这类问题如何解决?
如果保证/防范图片(或文件)上传中可能存在的安全隐患?

敬谢!

  1. 上传的时候不依靠Content-Type来做文档类型验证,可以参考我在这里的回答如何判断浏览器上传文件的真实类型?
  2. 上传的图片文件放到web 目录外的地方,限定好权限,图片展示的时候,可以使用另一个域名。
  3. 强制服务器给静态文件发送正确的文件头,避免图片中的代码被执行 参考http://nullcandy.com/php-image-upload-security-how-not-to-do-it/
<code>ForceType application/octet-stream
<filesmatch>
    ForceType image/jpeg
</filesmatch>
<filesmatch>
    ForceType image/gif
</filesmatch>
<filesmatch>
    ForceType image/png
</filesmatch>
</code>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn