繁体   English   中英

如何正确验证用户文件并检测扩展名更改?

[英]How to properly validate file from user and detect extension change?

我有这个代码

public bool IsImage(HttpPostedFileBase file)
{
    var contentType = file.ContentType.Split("/")(0).ToLower() == "image"

    if (contentType != "image")
    {
         return false;
    }

    return true;
}

但是,如果用户将.exe文件重命名为.jpg ,它仍然会认为它是有效的图像文件。 如何预防呢?

检查是否为图像的最简单方法是将其加载图像,例如,使用Image.FromStream 如果抛出异常,则不是图像(或者至少不是受支持的图像格式)。 我相信不仅限于使用扩展名或声明的MIME类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM