文件上载 - 下载系统的安全风险

时间:2017-01-20 11:59:34

标签: c# security model-view-controller file-upload file-read

我知道有很多关于这些主题的帖子。但这些帖子通常会谈到限制文件类型和大小等等。因此,由于我的系统没有任何约束,因此不能满足我的需求。

假设我们有一个Web应用程序,它接受来自登录用户的上传。这些用户通过Active Directory进行身份验证。不允许匿名用户。

用户可以将任何类型的文件上传到系统。然后,用户可以预览通过我们的多用途查看器上传的文件。现在我们支持一些基本的文件类型,如图片,音乐,视频,PDF文件和办公文件。我通过检查可查看类型的字典来决定可查看的类型,如果类型不存在,则不会预览但直接下载。

我对我所面临的安全风险感到好奇,因此我将尝试详细说明我的系统。

我在文件保存程序方面有两个不同的系统:

  1. 互联网应用程序,其中存储是一个结构化文件系统,其中文件名使用guids更改
  2. Intranet 应用程序,其中存储是非结构化文件系统,当用户上传文件时文件直接位于网络驱动器上,用户也可以通过网络驱动器访问文件
  3. 对于这两种应用,预览策略是相同的。

    所有文件都是通过操作方法提供的,只能在经过身份验证时访问。上传文件的逻辑路径遍历允许

    非office文件将返回给客户端,并显示在imgvideoembed html标记中。

    另一方面,Office文件首先通过Microsoft Office的互操作库执行,转换为pdf,然后返回给客户端,并再次显示为常规pdf。

    我想知道,通过这些流程,我是否在服务器端妥协任何安全性?我知道用户可以上传恶意文件,但用户在编写或阅读文件的过程中是否会损害我的系统?

    更新:我正在通过防病毒软件将文件带入临时区域后扫描文件。然后,如果没问题,将其提交到预备区域。

0 个答案:

没有答案