PHP-php如何控制上传图片的真实性?
php如何控制用户上传的图片是真实的。不仅仅是后缀名的验证?例如:有的是含有代码的文件只改了后缀是图片的。对于这种情况改如何处理
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
php如何控制用户上传的图片是真实的。不仅仅是后缀名的验证?例如:有的是含有代码的文件只改了后缀是图片的。对于这种情况改如何处理
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
你这个属于解决文件上传漏洞,主要分为两大类:
一类是没有对上传格式做很好的限制,比如linux环境下上传个php的木马,过滤方法不能使用排除法,因为有些扩展名是不能预料到的。如.php3,.php4也可以当做php网页来执行。要限制住只能使用某某扩展名,比如".JPG"、".BMP"、".GIF"。而且要再服务端做校验,不要紧紧用客户端脚本,因为可以修改发送的封包的,把封包中的muma.php.JPG修改为muma.php。
一类是网页嵌入图片时,没有使用<IMG>标签链接图像地址,而是把图片内容包含在网页中,这样就可以构造恶意的图片内容来搞破坏了,比如:
访问这个网页会加载图片,就跳到挂有木马的http://www.hacker.com/ 网站了。
也可以使用一律把文件生成缩略图快照的方法,两类上传漏洞都防住了。
另外,想验证图片的真实性,你可以看下 @【讨论】如何用PHP提取文件的扩展名并判断文件类型是否正确? 这个贴。