有关如何检查Azure的blob存储是否存在病毒的任何想法?

时间:2017-01-19 11:30:24

标签: azure azure-storage-blobs

我们的应用程序将从客户上传的文件存储到blob存储。这些文件在不同方(我们的客户及其供应商)之间交换。有没有办法检查上传的文件是否有病毒?反恶意软件服务似乎只是检查虚拟机,但我无法获得有关使用它来检查文件即服务的任何信息。

一个很好的解决方案是,如果我们可以将这样的文件存储在Azure存储中作为"保持"归档直到检查。然后我们需要一个服务来检查这个文件并返回结果。如果该文件没有病毒,我们可以将其移动到最终目的地。

5 个答案:

答案 0 :(得分:5)

Azure存储只是......存储。没有内置的实用程序,例如防病毒软件。您需要自己进行防病毒检查。由于防病毒工具通常仅适用于本地操作系统存储,因此您需要在已安装防病毒软件的本地磁盘上放置“保留”内容(如您所述),然后在防病毒检查后复制到blob存储完了。

您如何完成对此项的管理以及您使用的软件取决于您。但虚拟机,应用服务和云服务(Web /工作者角色)都有本地磁盘可用。

答案 1 :(得分:3)

正如另一个答案所述,Azure存储只是存储。但是,有几种方法可以做到这一点,

第一个解决方案是运行您自己的防病毒软件并将其用作网关或以编程方式从Blob存储中下载文件,检查文件然后采取相应的措施。可以运行像ClamAV这样的东西来自己做。

或者,您可以使用第三方服务,例如AttachmentScanner(这正是您在评论中提到的),它将接受URL或直接文件上传。使用Azure,您可以生成指向文件的临时URL,并在几分钟后到期,将URL传递给AttachmentScanner,然后根据结果采取适当的操作。

答案 2 :(得分:1)

我读了一篇有关病毒扫描Blob存储的文章。可能对您有用。 这个家伙正在使用azure函数触发器为blob捕获更改并将blob文件发送到病毒扫描程序。病毒扫描程序正在docker容器中运行。 完整的实施细节可在下面的链接中找到

https://peterrombouts.nl/2019/04/15/scanning-blob-storage-for-viruses-with-azure-functions-and-docker/

答案 3 :(得分:0)

我在一个天蓝色的文件存储容器上设置了一个“ azinbox”文件夹。我在VM上设置了控制台应用程序(作业),每隔30秒检查一次该文件夹中的文件。如果作业找到它,它将文件从azinbox移到VM上的vminbox文件夹。一旦文件显示在VM上,如果它带有病毒,它将被隔离,并从vminbox中删除该文件。然后,虚拟机上的作业将在30秒后检查该文件是否仍在vminbox中。如果是,则必须确定。该作业将经过验证的文件移动到azure文件存储容器上的azoutbox文件夹中。从网站角度来看,1)将文件上传到azinbox 2)等待一分钟,然后检查azoutbox。如果找到该文件,则网站会将文件从azoutbox移至其最终目的地。

我承认这是一个糟糕的解决方案,因为完成文件上传需要很长时间。一两分钟似乎很长的时间才能将简单的PDF上传给用户,特别是如果他们要上传多个PDF的话。

此外,这还需要您设置整个VM服务器,以验证文件是否包含病毒。

如果有人有更好的选择,请告诉我。

答案 4 :(得分:0)

您可以使用 Azure Defender for Storage 检测以下内容:

<块引用>
  • 可疑的访问模式 - 例如从 Tor 出口节点或从 Microsoft 威胁情报认为可疑的 IP 成功访问
  • 可疑活动 - 例如异常数据提取或访问权限异常更改
  • 上传恶意内容 - 例如潜在的恶意软件文件(基于哈希信誉分析)或托管网络钓鱼内容

要启用它,您需要转到 Advanced securityenter image description here