Я хотел бы загрузить некоторые файлы с jQuery File Upload
, но я хочу, чтобы фильтровать типы файлов с помощью этого кода:Фильтр типа файла для загрузки в ASP.Net Generic Обработчиков
public class file : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
HttpPostedFile postedFile = context.Request.Files["file"];
string extension = Path.GetExtension(postedFile.FileName).ToLower();
string[] validExtensions = { ".jpg", ".jpeg", ".png", ".gif", ".pdf", ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pps", ".ppsx" };
if (extension.IndexOf(extension) != -1)
{
// upload files here
}
}
public bool IsReusable
{
get
{
return false;
}
}
}
этот код работает хорошо, но когда я переименовать расширения файлов (например, при переименовании x.exe в x.jpg) указанный код, принять тип файла и начать загрузку файла.
Как я могу справиться с этой проблемой?
Посмотрите эту страницу OWASP для обеспечения безопасности загрузки файлов: https://www.owasp.org/index.php/Unrestricted_File_Upload –