【问题标题】:How to deal with user input files (images / video)?如何处理用户输入文件(图像/视频)?
【发布时间】:2020-02-18 12:44:21
【问题描述】:

在我们公司,我们必须处理大量用户上传的内容,例如图片和视频。现在我想知道:你们如何在安全方面“处理”?图像是否可能包含恶意内容?当然,还有“不想要的”像素,比如色情或其他东西。但这不是我现在的意思。我的意思是在解码时“破坏”机器的图像等。我已经看到了这个:How can a virus exist in an image

基本上我打算这样做:

  • 创建 DMZ
  • 将资产存储在位于 DMZ 内的存储桶(我们在这里使用 GCP)中
  • 然后对文件应用“恶意代码”检测
  • 如果结果没问题...然后将资产移至“真实”环境(非 dmz)

现在是第 3 部分...我可以在这里做什么?

应用病毒扫描程序 没问题,这里有很多选择。方法简单,病毒被捕获的机会很大。

进行 mime 类型检测 根据前几个字节,我进行了 MIME 类型检测。例如,如果有人向我们发送了“image.jpg”,但实际上它是一个可执行文件,那么我们会检测到这一点。正确的?这足够安全吗?我在想this package

还有什么??? 现在……我还能做什么?其他大公司如何做到这一点?我并不是真的在寻找编排等方面的答案。我知道如何使用 DMZ,将它们与一些 pubsub 主题链接在一起等。我纯粹对应用哪些技术真正发现这一点感兴趣传入的资产是“安全的”。

【问题讨论】:

  • 这个包看起来不错,并不是说它在谷歌搜索之上,它看起来做得很好并且有很多贡献者。

标签: security assets mime-types input-sanitization


【解决方案1】:

我的建议是不要在 DMZ 之外执行此操作,让它在您的 DMZ 内,并且它应该具有所有常规安全控制,就像您的数据中心内的任何其他系统一样。

除了您概述的内容(病毒扫描、Mime 类型检测)之外,我建议您执行一些额外的检查。

  1. 大小限制 - 您不希望任何人膨胀所有空间并阻塞您的服务器。

  2. 限制 - 同样,您可能希望控制吞吐量,至少能够限制到某个最大值。

  3. 启发式扫描 - 或许可以在防病毒软件中添加一个层来进行启发式扫描,而不是简单的签名扫描。

  4. 文件系统访问控制 - 确保文件系统访问控制是万无一失的,即使恶意软件进入它也应该能够传播到其他文件夹/路径。

  5. 网络控制 - 确保所有出站连接也都设置了防火墙,以防万一有任何东西试图建立出站连接。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-25
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-15
    • 2013-09-28
    • 1970-01-01
    相关资源
    最近更新 更多