如何在AWS S3上执行杀毒扫描

18

我有一个网络应用程序,用户将上传文件,Web服务器将保存它到S3中,而后在不将其复制到本地服务器的情况下进行处理。
现在我的问题是如何在处理这些文件之前对存储在S3中的文件执行病毒扫描。
要求使用成熟的杀毒软件应用程序。

更新:2018年4月10日
迄今为止,没有专业的杀毒系统可以直接对S3存储桶进行扫描。我们最终在我们的Windows / Linux计算机上安装了杀毒软件,并创建了一个流程,在此流程中,我们先将文件复制到临时文件夹中,完成扫描后再复制回S3。


2
我不明白为什么会有人在这个问题上进行负面投票。这是一个合法的案例。 - Tom Hert
你选择在额外的盒子上使用哪个音视频解决方案了吗?我们也在做同样的事情,但是我们正在寻找一种避免对外连接互联网的音视频解决方案。 - Joe
2
@Joe,市场上有许多专业的杀毒软件可供选择,你可以选择任何一个。在这里透露一个特定的杀毒软件公司名称是不公平的。 - Anshul Nigam
1
@AnshulNigam Symantec正在提供S3存储桶的直接扫描。https://securitycloud.symantec.com/cc/#/landing?inid=us_symc_cloud-workload-protection_pdp_to_leadgen_trialware_PID-101_cloud-workload-protection - Sai
4个回答

5

我建议使用Lambdas来建立一个工作流程。当S3上载时,自动触发一个Lambda,将文件复制到某个/tmp/文件夹中(假设它适合),对其进行病毒扫描,如果它通过了病毒扫描,则重新上传到S3的另一个bucket/folder。


如果扫描通过,则无需重新上传。如果未能通过,则我们将从S3中删除它。 - tom
1
是的,但您可能会意外下载未经过扫描的文件。如果您必须进行病毒扫描,那么您可能希望确保该文件没有任何风险,这意味着最简单的方法是将其从一个文件夹移动到“clean/”文件夹或类似的文件夹中。 - Henry
我喜欢这个想法,但是有没有任何知名的杀毒软件可以直接扫描S3存储桶呢? - Anshul Nigam

3

值得注意的是,使用ClamAV检测Windows病毒的检测率似乎只有约15%,因此这是一个可怕的选择。 - FINDarkside
@FINDarkside 那个15%的数字是从哪里来的?ClamAV真的不是一个合适的解决方案吗? - Rob
@Rob https://www.av-test.org/en/news/linux-16-security-packages-against-windows-and-linux-malware-put-to-the-test/ - FINDarkside

1
有很多方法可以做到这一点,但它们都需要将内容暂时复制到S3之外进行分析,最好在区域内进行以节省传输成本。
以下是使用几个Lambda函数(打包为1次点击部署)的示例,完全做到了这一点: https://github.com/uvasoftware/scanii-lambda 它使用我们的服务(https://scanii.com)进行分析,但您可以轻松地将该部分替换为任何您想要的服务,包括您已经与之建立关系的商业AV。此代码是Apache v2开源的,因此您可以根据需要进行修改。
希望这可以帮助到您。

0

这取决于您需要哪种模型。经过一些研究,有几个带有一些选项的模型:

  • SaaS产品:
    • 在您的AWS账户内或外部设置SaaS
    • 例如:CrowdStrike Falcon或AWS Marketplace产品,如https://bucketav.com/
  • AV产品:
    • 您购买/订阅的商业或OSS产品。它需要比SaaS更多的构建/维护工作。通常在ECS / EC2实例中运行(如果需要,则使用自动缩放组),并围绕其构建管道以在向S3存储桶添加文件时触发
    • 例如:http://www.binaryalert.io/

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接