了解 CloudWatch Logs 以及在 EC2 恶意软件防护扫描期间跳过资源的原因 - Amazon GuardDuty

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

了解 CloudWatch Logs 以及在 EC2 恶意软件防护扫描期间跳过资源的原因

GuardDuty EC2 恶意软件防护会将事件发布到 Amazon CloudWatch 日志组 /aws/guardduty/malware-scan-events。对于与恶意软件扫描相关的每个事件,您可以监控受影响资源的状态和扫描结果。在 EC2 恶意软件防护扫描期间可能跳过了某些 Amazon EC2 资源和 Amazon EBS 卷。

在 GuardDuty EC2 恶意软件防护中审计 CloudWatch Logs

/aws/guardduty/malware-scan-events CloudWatch 日志组支持三种类型的扫描事件。

EC2 恶意软件防护扫描事件名称 说明

EC2_SCAN_STARTED

在 GuardDuty EC2 恶意软件防护启动恶意软件扫描过程(例如准备拍摄 EBS 卷快照)时创建。

EC2_SCAN_COMPLETED

在 GuardDuty EC2 恶意软件防护对至少一个受影响资源的 EBS 卷完成扫描时创建。此事件还包括属于扫描的 EBS 卷的 snapshotId。扫描完成后,扫描结果将是 CLEANTHREATS_FOUNDNOT_SCANNED

EC2_SCAN_SKIPPED

在 GuardDuty EC2 恶意软件防护扫描跳过受影响资源的所有 EBS 卷时创建。要确定跳过的原因,请选择相应的事件并查看详细信息。有关跳过原因的更多信息,请参见下文的 恶意软件扫描期间跳过资源的原因

注意

如果您使用的是 AWS Organizations,则来自组织中成员账户的 CloudWatch 日志事件会同时发布到管理员账户和成员账户的日志组。

选择您的首选访问方式,查看和查询 CloudWatch 事件。

Console
  1. 登录 AWS Management Console 并打开 CloudWatch 控制台,网址为 https://console.aws.amazon.com/cloudwatch/

  2. 在导航窗格中,在日志下选择日志组。选择 /aws/guardduty/malware-scan-events 日志组,以查看 GuardDuty EC2 恶意软件防护的扫描事件。

    要运行查询,选择 Log Insights

    有关运行查询的信息,请参阅《Amazon CloudWatch Logs 用户指南》中的使用 CloudWatch Logs Insights 分析日志数据

  3. 选择扫描 ID 以监控受影响资源和恶意软件调查发现的详细信息。例如,您可以使用运行以下查询并使用scanId 来筛选 CloudWatch 日志事件。务必使用您自己的有效扫描 ID

    fields @timestamp, @message, scanRequestDetails.scanId as scanId | filter scanId like "77a6f6115da4bd95f4e4ca398492bcc0" | sort @timestamp asc
API/CLI
  • 要使用日志组,请参阅《Amazon CloudWatch 用户指南》中的使用 AWS CLI 搜索日志条目

    选择 /aws/guardduty/malware-scan-events 日志组,以查看 GuardDuty EC2 恶意软件防护的扫描事件。

  • 要查看和筛选日志事件,请分别参阅《Amazon CloudWatch API 参考》中的 GetLogEventsFilterLogEvents

GuardDuty EC2 恶意软件防护日志保留

/aws/guardduty/malware-scan-events 日志组的默认日志保留期为 90 天,之后日志事件将自动删除。要更改 CloudWatch 日志组的日志保留策略,请参阅《Amazon CloudWatch 用户指南》中的 Change log data retention in CloudWatch Logs或《Amazon CloudWatch API 参考》中的 PutRetentionPolicy

恶意软件扫描期间跳过资源的原因

在与恶意软件扫描相关的事件中,可能在扫描过程中跳过某些 EC2 资源和 EBS 卷。下表列出了 GuardDuty EC2 恶意软件防护可能无法扫描资源的各种原因。如果适用,请使用建议的步骤来解决这些问题,并在 GuardDuty EC2 恶意软件防护下次启动恶意软件扫描时扫描这些资源。其他问题用于告知您事件的过程,且不可采取行动。

跳过的原因 说明 建议的步骤

RESOURCE_NOT_FOUND

在您的 AWS 环境中找不到提供的用于启动按需恶意软件扫描的 resourceArn

验证您的 Amazon EC2 实例或容器工作负载的 resourceArn,然后重试。

ACCOUNT_INELIGIBLE

您尝试启动按需恶意软件扫描的 AWS 账户 ID 尚未启用 GuardDuty。

确认该 AWS 账户已启用 GuardDuty。

当在新 AWS 区域 中启用 GuardDuty 时,最多可能需要 20 分钟才能进行同步。

UNSUPPORTED_KEY_ENCRYPTION

GuardDuty EC2 恶意软件防护支持未加密的卷和使用客户自主管理型密钥加密的卷。不支持扫描使用 Amazon EBS 加密进行加密的 EBS卷。

目前,存在不适用此跳过原因的区域差异。有关这些 AWS 区域的更多信息,请参阅特定于区域的功能可用性

将您的加密密钥替换为客户托管式密钥。有关 GuardDuty 支持的加密类型的更多信息,请参阅 支持用于恶意软件扫描的 Amazon EBS 卷

EXCLUDED_BY_SCAN_SETTINGS

在恶意软件扫描期间,EC2 实例或 EBS 卷被排除在外。有两种可能性:要么将标签添加到包含列表中但资源未与此标签关联,要么将标签添加到排除列表并且资源与此标签相关联,要么此资源的 GuardDutyExcluded 标签设置为了 true

更新您的扫描选项或与您的 Amazon EC2 资源关联的标签。有关更多信息,请参阅 使用用户定义的标签扫描选项

UNSUPPORTED_VOLUME_SIZE

卷大于 2048 GB。

不可操作。

NO_VOLUMES_ATTACHED

GuardDuty EC2 恶意软件防护在您的账户中找到了该实例,但该实例没有挂载 EBS 卷来进行扫描。

不可操作。

UNABLE_TO_SCAN

这是内部服务错误。

不可操作。

SNAPSHOT_NOT_FOUND

找不到从 EBS 卷创建并与服务账户共享的快照,GuardDuty EC2 恶意软件防护无法继续扫描。

检查 CloudTrail,确保快照不是被有意删除的。

SNAPSHOT_QUOTA_REACHED

您已达到每个区域允许的最大快照容量。这不仅可以防止保留快照,还可以防止创建新快照。

您可以移除旧快照或请求增加配额。您可以在《AWS 一般参考指南》服务限额下查看每个区域快照的默认限制以及如何申请增加配额。

MAX_NUMBER_OF_ATTACHED_VOLUMES_REACHED

在 EC2 实例上附加了超过 11 个 EBS 卷。GuardDuty EC2 恶意软件防护扫描了前 11 个 EBS 卷,这些卷是通过按 deviceName 字母顺序排序获得的。

不可操作。

UNSUPPORTED_PRODUCT_CODE_TYPE

GuardDuty 不支持使用 productCode 作为 marketplace 扫描实例。有关更多信息,请参阅《Amazon EC2 用户指南》中的付费 AMI

有关 productCode 的更多信息,请参阅《Amazon EC2 API 参考》中的 ProductCode

不可操作。