[英]Scan files in AWS S3 bucket for virus using lambda
我们需要扫描用户上传的文件,检查是否有病毒,然后将其标记为受感染。 我检查了一些博客和其他 stackoverflow 答案,并知道我们可以使用冷静扫描。
但是,我对 clamscan 配置中病毒扫描的路径感到困惑。 另外,有没有教程可以参考。 我们的应用程序后端位于 Node.js 中。
我也对其他图书馆/服务开放
很难说没有更多信息(即您的代码运行的架构等)。
我想说实现您想要的最简单的方法是在您的 S3 存储桶上的每个 PUT 事件上连接一个触发器。 我从未使用过任何病毒扫描工具,但我相信它们都作为服务器中的守护进程运行,因此您可以为 S3 Bucket 事件订阅 SQS 队列并拥有服务器(可以是 EC2 实例或 ECS任务)安装了病毒扫描工具后,轮询 SQS 队列以获取新消息。
处理完消息并检测到漏洞后,您只需在恶意 object 上调用putObjectTagging
API。
我们一直在做类似的事情,但在我们的例子中,它是在文件存储在S3
之前。 没关系,我认为,解决方案仍然适用于您。
我们有一个安装了clamav
的 EC2 实例。 然后编写了一个接受多部分文件并获取该文件内容并在内部调用ClamAv
命令以扫描该文件的 Web 服务。 作为响应,该服务返回文件not
被Infected
。
您的解决方案可能是,
virus scan service
)。virus scan service
。Virus Scan service
响应,适当地标记您的 S3 文件。 如果您也开放付费服务,那么在上述步骤中,#1 将不适用,只需调用Symantec
或其他此类提供商的病毒扫描服务等即可。
我希望它有所帮助。
您可以通过 AWS 检查此解决方案,它会给您一个类似架构的想法: https://aws.amazon.com/blogs/developer/virus-scan-s3-buckets-with-a-serverless-clamav-based -cdk 构造/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.