jiekii 2019-03-09 14:02:41 2533次浏览 2条回复 1 1 0

今天发现Yii的 FileValidator 类对图片文件的验证过于严谨,导致有些被改过后缀的图片文件无法上传。

比如图片 123.png 后缀被改为 .jpg 后,虽然这张图片仍然可以打开,但是无法上传。

QQ截图20190309072247.png

QQ截图20190309072723.png

觉得很赞
  • 回复于 2019-03-10 20:58 举报

    五年老哥 你那么快就找到了工作啊!

    1 条回复
    回复于 2019-03-11 19:20 回复

    你有介绍吗

  • 回复于 2019-03-11 07:54 举报

    这样的修改是非常 不可取的。
    对用户上传的图片文件 进行严格的格式校验,并不是随随便便的 突发奇想, 这是无数起 黑客攻击 换来的教训
    对于正常用户来说 修改图片后缀 并不是一个常规的操作,
    但对于一名攻击者,将 a.php 修改成 a.php.jpg 却是一个很正常的操作
    即使 这样的上传文件 也并不能 就对服务器造成危险(web server配置正确的话),但毕竟是一个 挺大的风险

    1 条回复
    回复于 2019-03-11 18:53 回复

    网路图片不能保证图片后缀会与原始后缀一致,有时候我们下载一张网络图片,有时会不小心保存为其他格式。
    反正这个限制对于用户体验非常不好。

    如果要验证图片真实性还可以通过其他方法实现,不一定要用这种吧。

您需要登录后才可以回复。登录 | 立即注册