CAmazon基金会基准控件 - Amazon Security Hub
1.1 — 避免使用根用户1.2 — 确保为具有控制台密码的所有 IAM 用户启用多重身份验证 (MFA) 1.3 — 确保禁用 90 天或更长时间未使用的证书1.4 — 确保每隔 90 天或更短时间轮换一次访问密钥 1.5 — 确保 IAM 密码策略要求至少一个大写字母1.6 — 确保 IAM 密码策略要求至少一个小写字母1.7 — 确保 IAM 密码策略要求至少一个符号1.8 — 确保 IAM 密码策略要求至少一个数字1.9 — 确保 IAM 密码策略要求的最小长度为 14 或更长1.10 — 确保 IAM 密码策略防止密码重复使用1.11 — 确保 IAM 密码策略在 90 天或更短时间内使密码过期1.12 — 确保不存在 root 用户访问密钥1.13 — 确保为根用户启用 MFA 1.14 — 确保为根用户启用硬件 MFA 1.16 — 确保 IAM 策略仅附加到群组或角色1.20 - 确保已创建支持角色来管理与 Amazon Support 相关的事件 1.22 — 确保未创建允许完全 “*: *” 管理权限的 IAM 策略 2.1 — 确保 CloudTrail 在所有区域中均已启用2.2 — 确保 CloudTrail 已启用 Log 文件验证 2.3 — 确保 S3 存储桶 CloudTrail 无法公开访问的日志2.4 — 确保 CloudTrail 跟踪已与亚马逊集成 CloudWatch 日志2.5 — 确保Amazon Config已启用2.6 — 确保在上启用 S3 存储区访问日志记录 CloudTrail S3 存储桶 2.7 — 确保 CloudTrail 使用静态加密日志Amazon KMS keys2.8 — 确保启用客户创建的 KMS 密钥的轮换2.9 — 确保在所有 VPC 中启用 VPC 流量记录 3.1 — 确保针对未授权的 API 调用存在日志指标筛选条件和警报 3.2 — 确保存在日志指标筛选条件和警报Amazon Web Services Management Console不使用 MFA 登录 3.3 — 确保存在使用根用户的日志指标筛选条件和警报 3.4 — 确保存在针对 IAM 策略更改的日志指标筛选条件和警报 3.5 — 确保存在日志指标筛选条件和警报 CloudTrail 配置更改 3.6 — 确保存在日志指标筛选条件和警报Amazon Web Services Management Console身份验证失败 3.7 — 确保存在禁用或计划删除客户管理密钥的日志指标筛选器和警报 3.8 — 确保存在针对 S3 存储桶策略更改的日志指标筛选条件和警报3.9 — 确保存在日志指标筛选条件和警报Amazon Config配置更改 3.10 — 确保存在日志指标筛选条件和安全组更改警报 3.11 — 确保存在网络访问控制列表 (NACL) 更改的日志指标筛选器和警报3.12 — 确保存在日志指标筛选条件和网络网关变更警报 3.13 — 确保存在路由表更改的日志指标筛选条件和警报 3.14 — 确保 VPC 更改存在日志指标筛选条件和警报 4.1 — 确保没有安全组允许从 0.0.0.0.0/0 进入端口 22 4.2 — 确保没有安全组允许从 0.0.0.0.0/0 进入端口 3389 4.3 — 确保每个 VPC 的默认安全组限制所有流量
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

CAmazon基金会基准控件

对于独联体来说Amazon基础标准,Security Hub 支持以下控件。对于每个控制,该信息包括所需的 Amazon Config 规则和修复步骤。

1.1 — 避免使用根用户

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

根账户可以不受限制地访问Amazon账户。我们强烈建议您避免使用 root 用户执行日常任务。尽量减少 root 用户的使用并采用最小权限原则进行访问管理,可降低意外更改和意外泄露高权限凭证的风险。

作为最佳做法,请仅在需要时使用根用户凭证。执行账户和服务管理任务. 将 IAM 策略直接应用于群组和角色,但不适用于用户。有关如何设置管理员以供日常使用的教程,请参阅创建您的第一个 IAM 管理员用户和组在里面IAM 用户指南

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.3 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下案例中的发现:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security Hub 会生成WARNING对照调查结果。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题,接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. 打开 CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {$.userIdentity.type="Root" && $.userIdentity.invokedBy NOT EXISTS && $.eventType !="AwsServiceEvent"}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您需要在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后,选择创建指标筛选条件.

  8. 在导航窗格中,选择日志组,然后选择您在下方创建的过滤器指标筛选条件.

  9. 选中筛选对应的复选框。选择Create alarm(创建警报)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面条件,对于Threshold,选择静态.

    2. 对于定义警报条件,选择大于/等于.

    3. 对于定义阈值输入1.

    4. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明用于警报,例如CIS-1.1-RootAccountUsage. 然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

1.2 — 确保为具有控制台密码的所有 IAM 用户启用多重身份验证 (MFA)

Severity:

Amazon Config 规则:mfa-enabled-for-iam-console-access

Schedule 类型:定期

多重身份验证 (MFA) 在用户名和密码之上增加了一层额外的防护。启用 MFA 后,当用户登录 Amazon 网站时,系统会提示他们输入用户名和密码以及 Amazon MFA 设备的验证码。

CIS 建议您为所有拥有控制台密码的账户启用 MFA。MFA 为控制台访问提供了更高的安全保护。它要求身份验证负责人拥有一台发出时间敏感密钥的设备并知道证书。

重要

用于该检查的 Amazon Config 规则最多可能需要 4 个小时才能准确报告 MFA 的结果。在启用 CIS 安全检查后的前 4 小时内生成的任何发现都可能不准确。修复此问题后,最多可能需要 4 个小时才能通过检查。

修复

要为 IAM 用户添加 MFA,请参阅在中使用多重身份验证 (MFA)Amazon在里面IAM 用户指南.

1.3 — 确保禁用 90 天或更长时间未使用的证书

Severity:

Amazon Config 规则:iam-user-unused-credentials-check

Schedule 类型:定期

IAM 用户可以访问Amazon使用不同类型的证书(例如密码或访问密钥)的资源。

CIS 建议您删除或停用在 90 天或更长时间内未使用的所有证书。禁用或删除不必要的凭证可减少他人使用遭盗用账户或已弃用账户的关联凭证的风险。

此控件的 Amazon Config 规则使用 GetCredentialReportGenerateCredentialReport API 操作,这些操作每四小时才更新一次。对 IAM 用户的更改最多可能需要四个小时才能显示给该控件。

修复

要获取监控账户是否有过期证书所需的一些信息,请使用 IAM 控制台。例如,当您查看账户中的用户时,会显示 Access key age (访问密钥使用期限)Password age (密码使用期限)Last activity (上次活动时间)。如果上述列中的任何一个中的值大于 90 天,请停用这些用户的凭证。

您还可以使用凭证报告来监控用户账户和识别 90 天或更长时间没有活动的账户。您可以从 IAM 控制台下载 .csv 格式的证书报告。有关凭证报告的更多信息,请参阅获取您 Amazon 账户的凭证报告

确定非活动账户或未使用的凭证后,请使用以下步骤禁用它们。

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Users(用户)。

  3. 选择凭证超过 90 天的用户的名称。

  4. 选择 Security credentials (安全凭证),然后为 90 天或更长时间未使用的所有登录凭证和访问密钥选择转为非活跃

1.4 — 确保每隔 90 天或更短时间轮换一次访问密钥

Severity:

Amazon Config 规则:access-keys-rotated

Schedule 类型:定期

访问密钥包含访问密钥 ID 和秘密访问密钥,用于签署对发出的编程请求Amazon.Amazon用户需要自己的访问密钥才能进行编程调用Amazon来自 的Amazon Command Line Interface(Amazon CLI), Tools for Windows f PowerShell,Amazon开发工具包,或使用个人的 API 进行直接 HTTP 调用Amazon服务。

定期轮换访问密钥时,您可以减少使用与账户泄漏或终止的账户相关的访问密钥的可能性。轮换访问密钥以确保无法使用可能已丢失、遭破解或被盗用的旧密钥访问数据。

注意

非洲(开普敦)或欧洲(米兰)不支持此控件。

修复

确保访问密钥的使用时长不超过 90 天

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Users(用户)。

  3. 对于显示 Access key age (访问密钥使用期限) 超出 90 天的每个用户,选择用户名来打开该用户的设置。

  4. 选择 Security credentials (安全凭证)

  5. 为用户创建新的密钥:

    1. 选择创建访问密钥

    2. 要保存密钥内容,请下载秘密访问密钥,或者选择 Show (显示),然后从页面中复制该密钥。

    3. 将密钥存储在安全位置以提供给用户。

    4. 选择 Close(关闭)。

  6. 更新使用上一个密钥的所有应用程序以使用新密钥。

  7. 对于上一个密钥,请选择 Make inactive (转为非活跃) 来使访问密钥转为非活动状态。现在,用户无法使用该密钥发出请求。

  8. 确认使用新密钥的所有应用程序都能按预期工作。

  9. 确认所有应用程序都使用新密钥后,删除以前的密钥。访问密钥一经删除,就无法恢复。

    要删除上一个密钥,请在行末尾选择 X,然后选择 Delete (删除)

1.5 — 确保 IAM 密码策略要求至少一个大写字母

Severity:

Amazon Config 规则:iam-password-policy

Schedule 类型:定期

密码策略在某种程度上强制实施密码复杂性要求。使用 IAM 密码策略确保密码使用不同的字符集。

CIS 建议密码policy 至少要求一个大写字母。设置密码复杂性策略可提高账户抵抗暴力登录尝试的弹性。

修复

修改密码策略

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Account settings (账户设置)

  3. 选择至少需要一个大写字母,然后选择 Apply password policy (应用密码策略)

1.6 — 确保 IAM 密码策略要求至少一个小写字母

严重性:

Amazon Config 规则:iam-password-policy

Schedule 类型:定期

密码策略在某种程度上强制实施密码复杂性要求。使用 IAM 密码策略确保密码使用不同的字符集。CIS 建议密码policy 至少要求一个小写字母。设置密码复杂性策略可提高账户抵抗暴力登录尝试的弹性。

修复

修改密码策略

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Account settings (账户设置)

  3. 选择 至少需要一个小写字母 (Requires at least one lowercase letter),然后选择 Apply password policy (应用密码策略)

1.7 — 确保 IAM 密码策略要求至少一个符号

Severity:

Amazon Config 规则:iam-password-policy

计划类型:定期

密码策略在某种程度上强制实施密码复杂性要求。使用 IAM 密码策略确保密码使用不同的字符集。

CIS 建议密码策略至少要求一个符号。设置密码复杂性策略可提高账户抵抗暴力登录尝试的弹性。

修复

修改密码策略

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Account settings (账户设置)

  3. 选择 Require at least one non-alphanumeric character (至少需要一个非字母数字字符),然后选择 Apply password policy (应用密码策略)

1.8 — 确保 IAM 密码策略要求至少一个数字

Severity:

Amazon Config 规则:iam-password-policy

Schedule 类型:定期

密码策略在某种程度上强制实施密码复杂性要求。使用 IAM 密码策略确保密码使用不同的字符集。

CIS 建议密码策略至少要求一个数字。设置密码复杂性策略可提高账户抵抗暴力登录尝试的弹性。

修复

修改密码策略

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Account settings (账户设置)

  3. 选择 Requires at least one number (至少需要一个数字),然后选择 Apply password policy (应用密码策略)

1.9 — 确保 IAM 密码策略要求的最小长度为 14 或更长

Severity:

Amazon Config 规则:iam-password-policy

Schedule 类型:定期

密码策略在某种程度上强制实施密码复杂性要求。使用 IAM 密码策略确保密码的长度至少为给定长度。

CIS 建议密码策略要求最小密码长度为 14 个字符。设置密码复杂性策略可提高账户抵抗暴力登录尝试的弹性。

修复

修改密码策略

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Account settings (账户设置)

  3. 最短密码长度 (Minimum password length)字段中,输入 14,然后选择 Apply password policy (应用密码策略)

1.10 — 确保 IAM 密码策略防止密码重复使用

Severity:

Amazon Config 规则:iam-password-policy

Schedule 类型:定期

此控件检查要记住的密码数量是否设置为 24。如果值不是 24,则控制失败。

IAM 密码策略可以防止同一个用户重复使用给定密码。

CIS 建议密码策略防止重复使用密码。阻止重复使用密码可提高账户抵抗暴力登录尝试的弹性。

修复

修改密码策略

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Account settings (账户设置)

  3. Select防止密码重复使用然后输入24为了要记住的密码数量.

  4. 选择 Apply password policy (应用密码策略)

1.11 — 确保 IAM 密码策略在 90 天或更短时间内使密码过期

Severity:

Amazon Config 规则:iam-password-policy

Schedule 类型:定期

IAM 密码策略可以要求密码在给定天数后轮换或过期。

CIS 建议密码策略在 90 天或更短时间后过期。缩短密码生存期可提高账户抵抗暴力登录尝试的弹性。在以下情况下,要求定期更改密码也是非常有用的:

  • 密码可能会在您不知情的情况下被窃取或泄露。系统遭受攻击、软件漏洞或内部威胁都可能导致发生这种情况。

  • 某些公司和政府的 Web 过滤器或代理服务器能够拦截和记录流量(即使流量已加密)。

  • 很多用户对于许多系统(例如工作系统、电子邮件和个人系统)都使用相同的密码。

  • 遭受攻击的最终用户工作站可能存在击键记录器。

修复

修改密码策略

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Account settings (账户设置)

  3. Select启用密码过期然后输入90为了密码到期时间(以天为单位).

  4. 选择 Apply password policy (应用密码策略)

1.12 — 确保不存在 root 用户访问密钥

Severity: 重大

Amazon Config 规则:iam-root-access-key-check

Schedule 类型:定期

根账户具有对中所有服务和资源的完全访问权限Amazon账户。Amazon访问密钥提供对给定账户的编程访问权限。

CIS 建议删除所有与 root 用户关联的访问密钥。移除与 root 用户关联的访问密钥限制了账户可能被入侵的矢量。移除 root 用户访问密钥还会鼓励创建和使用权限最低的基于角色的账户。

注意

亚太地区(大阪)不支持此控件。

修复

要删除根用户访问密钥,请参阅删除根用户的访问密钥在里面IAM 用户指南.

1.13 — 确保为根用户启用 MFA

Severity: 重大

Amazon Config 规则:root-account-mfa-enabled

Schedule 类型:定期

根账户具有对中所有服务和资源的完全访问权限Amazon账户。MFA 在用户名和密码之上增加了一层额外的防护。启用 MFA 后,当用户登录 Amazon 网站时,系统会提示他们输入用户名和密码以及 Amazon MFA 设备的验证码。

当您为 root 用户使用虚拟 MFA 时,CIS 建议使用的设备为个人设备。请改用与任何个人设备分开付费和保护的专用移动设备(平板电脑或手机)。这可降低因设备丢失、设备换购或拥有设备的个人离开公司而导致无法访问 MFA 的风险。

注意

以下区域不支持此控制。

  • China (Beijing)

  • China (Ningxia)

  • Amazon GovCloud (US-East)

  • Amazon GovCloud (美国西部)。

修复

要向根用户添加 MFA,请参阅在中使用多重身份验证 (MFA)Amazon在里面IAM 用户指南.

1.14 — 确保为根用户启用硬件 MFA

Severity: 重大

Amazon Config 规则:root-account-hardware-mfa-enabled

Schedule 类型:定期

根账户具有对中所有服务和资源的完全访问权限Amazon账户。MFA 在用户名和密码之上增加了一层额外的防护。启用 MFA 后,当用户登录 Amazon 网站时,系统会提示他们输入用户名和密码以及 Amazon MFA 设备的验证码。

对于级别 2,CIS 建议您使用硬件 MFA 保护根用户证书。硬件 MFA 的攻击面小于虚拟 MFA。例如,硬件 MFA 不受虚拟 MFA 所在的移动智能手机引入的攻击面影响。

对大量账户使用硬件 MFA 可能会产生物流设备管理问题。如果发生这种情况,请考虑有选择性地对安全性最高的账户实施此第 2 级别的建议。然后,您可以将第 1 级别的建议应用于其余账户。

基于时间的一次性密码(TOTP)和通用第二要素(U2F)令牌均可作为硬件 MFA 选项。

注意

以下区域不支持此控制。

  • China (Beijing)

  • China (Ningxia)

  • Amazon GovCloud (US-East)

  • Amazon GovCloud (美国西部)。

修复

要为 root 用户添加硬件 MFA 设备,请参阅为硬件 MFA 设备启用 MFA 设备Amazon账户根用户(控制台)在里面IAM 用户指南.

1.16 — 确保 IAM 策略仅附加到群组或角色

Severity:

Amazon Config 规则:iam-user-no-policies-check

Schedule 类型:变更触发器

默认情况下,IAM 用户、组和角色无权访问Amazon资源。IAM policy(IAM policy)是向用户、组或角色授予特权的方式。

CIS 建议您将 IAM 策略直接应用于群组和角色,但不适用于用户。随着用户数量的增长,在组或角色级别分配权限可降低访问管理的复杂性。降低访问管理的复杂性有助于减少委托人意外收到或保留过多权限的机会。

注意

由亚马逊简单电子邮件服务创建的 IAM 用户是使用内联策略自动创建的。Security Hub 会自动免除这些用户的此控制。

修复

要解决该问题,创建 IAM 组,并将该策略附加到组。然后,将用户添加到组中. 策略将应用于组中的每一位用户。要删除直接附加到用户的策略,请参阅添加和删除 IAM 身份权限在里面IAM 用户指南.

1.20 - 确保已创建支持角色来管理与 Amazon Support 相关的事件

Severity:

Amazon Config 规则:iam-policy-in-use

Schedule 类型:定期

Amazon 提供了可用于事件通知和响应的支持中心,以及技术支持和客户服务。

创建 IAM 角色以允许授权用户使用AmazonSupport。通过实现访问控制的最小权限,IAM 角色将需要适当的 IAM 策略来允许支持中心访问,以便管理以下事件AmazonSupport。

注意

以下区域不支持此控制。

  • 非洲(开普敦)

  • 亚太地区(大阪)

  • 欧洲(米兰)

修复

要纠正此问题,请创建一个角色以允许授权用户管理 Amazon Support 事件。

创建要用于 Amazon Support 访问的角色

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在 IAM 导航窗格中,选择角色,然后选择创建角色.

  3. 对于角色类型,请选择另一个Amazon帐户.

  4. 对于 Account ID (账户 ID),输入您希望向其授予对资源的访问权限的 Amazon 账户的 Amazon 账户 ID。

    如果将代入此角色的用户或组位于同一账户中,则输入本地账户号码。

    注意

    指定账户的管理员可向该账户中的任何 IAM 用户授予担任该角色的权限。为此,管理员需要将策略附加到用户或组来授予 sts:AssumeRole 操作的权限。在该策略中,资源必须是角色 ARN。

  5. 选择 Next:。Permissions (下一步:权限)

  6. 搜索托管策略 AWSSupportAccess

  7. 选中 AWSSupportAccess 托管策略的复选框。

  8. 选择 Next:。标签

  9. (可选)要向角色添加元数据,请以键值对的形式附加标签。

    有关将在 IAM 中使用标签的更多信息,请参阅标记 IAM 用户和角色在里面IAM 用户指南.

  10. 选择 Next:。审核

  11. 对于 Role name (角色名称),为您的角色输入一个名称。

    角色名称在您的 Amazon 账户内必须是唯一的。它们不区分大小写。

  12. (可选)对于 Role description (角色描述),输入新角色的描述。

  13. 检查该角色,然后选择Create role (创建角色)

1.22 — 确保未创建允许完全 “*: *” 管理权限的 IAM 策略

Severity:

Amazon Config 规则:iam-policy-no-statements-with-admin-access

Schedule 类型:变更触发器

此控件通过包含以下语句来检查默认版本的 IAM 策略(也称为客户托管策略)是否具有管理员访问权限"Effect": "Allow""Action": "*"结束了"Resource": "*". 如果您的 IAM 策略包含此类语句,则控制会失败。

该控制仅检查您创建的客户托管策略。它不进行内联检查,Amazon托管策略。

IAM 策略定义了授予用户、群组或角色的一组权限。建议遵循标准安全建议来授予最小权限,即仅授予执行任务所需的权限。首先,确定用户需要执行的任务,然后,拟定仅限用户执行这些任务的策略,而不是允许完全管理权限。

应先尽量授予一组具有最小许可的许可,然后根据需要授予额外许可,而不应先授予过于宽松的许可,而后再试图收紧。提供完全管理权限而不是限制用户执行任务所需的最小权限集会将资源暴露给可能有害的操作。

您应该删除带有以下语句的 IAM 策略"Effect": "Allow""Action": "*" 结束了"Resource": "*".

修复

要修改您的 IAM 策略以使其不允许完整的 “*” 管理权限,请参阅编辑 IAM policy在里面IAM 用户指南.

2.1 — 确保 CloudTrail 在所有区域中均已启用

Severity:

Amazon Config 规则:multi-region-cloudtrail-enabled

Schedule 类型:定期

此控件检查是否存在至少一个多区域 CloudTrail 跟踪 它还会检查ExcludeManagementEventSources其中至少有一条路径的参数为空。

CloudTrail 是一项记录服务AmazonAPI 调用您的账户并将日志文件传送给您。记录的信息包括 API 调用者的身份、API 调用的时间、API 调用者的源 IP 地址、请求参数以及返回的响应元素Amazon服务。 CloudTrail 提供了以下历史记录Amazon账户的 API 调用,包括通过以下方式进行的 API 调用Amazon Web Services Management Console,AmazonSDK、命令行工具和更高级别的工具Amazon服务(例如Amazon CloudFormation)。

这些区域有:Amazon生成的 API 调用历史记录 CloudTrail 支持安全分析、资源变更跟踪和合规性审计。此外:

  • 确保存在多区域跟踪可确保检测到在其他未使用区域中发生的意外活动

  • 确保存在多区域跟踪可确保默认情况下为跟踪启用全局服务日志记录,以捕获在 Amazon 全局服务上生成的事件的记录

  • 对于多区域跟踪,确保为所有类型的读取/写入配置管理事件可确保记录对 Amazon 账户中的所有资源执行的管理操作

默认情况下, CloudTrail 使用创建的路线Amazon Web Services Management Console是多区域步道。

修复

在以下情况下创建新跟踪 CloudTrail

  1. 登录Amazon Web Services Management Console然后打开 CloudTrail 控制台位于https://console.aws.amazon.com/cloudtrail/.

  2. 如果你还没用过 CloudTrail Defore立即开始使用.

  3. 选择 Trails (跟踪),然后选择 Create trail (创建跟踪)

  4. 输入跟踪的名称。

  5. Storage location (存储位置) 下,执行下列操作之一:

    • 创建新的 S3 存储桶 CloudTrail 日志,选择创建新的 S3 存储桶然后输入存储桶的名称。

    • 选择使用现有的 S3 存储桶然后选择要使用的存储桶。

  6. 选择其他设置而且,对于日志文件验证,选择Enabled通过2.2 — 确保 CloudTrail 已启用 Log 文件验证 .

  7. 通过2.4 — 确保 CloudTrail 跟踪已与亚马逊集成 CloudWatch 日志,则必须启用 CloudWatch 日志。

    1. 下面 CloudWatch 日志,选择Enabled复选框。

    2. 对于日志组,执行以下操作之一:

      • 要使用现有日志组,请选择现有然后输入要使用的日志组的名称。

      • 要创建新的日志组。new然后输入要创建的日志组的名称。

    3. 对于 IAM role (IAM 角色),执行以下操作之一:

      • 要使用现有角色,请选择现有然后从下拉列表选择角色。

      • 要创建新角色,请选择new然后输入要创建的角色的名称。将为新角色分配一个策略以授予所需的权限。

        要查看授予该角色的权限,请展开策略文档.

  8. 选择 Create(创建)。

要更新现有记录 CloudTrail

  1. 登录Amazon Web Services Management Console然后打开 CloudTrail 控制台位于https://console.aws.amazon.com/cloudtrail/.

  2. 选择 Trails (跟踪)

  3. Name (名称) 列中选择跟踪的名称。

  4. 根据需要更新跟踪配置。

    要为特定部分更新配置,请执行以下操作:

    1. 选择编辑对于该部分。

    2. 对配置进行必要的更新。

    3. 选择 Save changes(保存更改)。

2.2 — 确保 CloudTrail 已启用 Log 文件验证

Severity:

Amazon Config 规则:cloud-trail-log-file-validation-enabled

Schedule 类型:定期

CloudTrail 日志文件验证会创建一个数字签名的摘要文件,其中包含每个日志的哈希值 CloudTrail 写入 S3。您可以使用这些摘要文件来确定日志文件之后是否已更改、删除或未更改 CloudTrail 已发送日志。

CIS 建议您在所有路径上启用文件验证。启用日志文件验证可提供额外的完整性检查 CloudTrail 日志。

修复

To enable CloudTrail 日志文件验证

  1. 打开 CloudTrail 控制台位于https://console.aws.amazon.com/cloudtrail/.

  2. 选择 Trails (跟踪)

  3. Name (名称) 列中选择要编辑的跟踪的名称。

  4. 下面一般详细信息,选择编辑.

  5. 下面其他设置,对于日志文件验证,selectEnabled.

  6. 选择 Save(保存)。

2.3 — 确保 S3 存储桶 CloudTrail 无法公开访问的日志

Severity: 重大

Amazon Config 规则:s3-bucket-public-read-prohibiteds3-bucket-public-write-prohibited

Schedule 类型:定期触发变更

CloudTrail 记录您账户中每次 API 调用的记录。这些日志文件存储在 S3 存储桶中。CIS 建议将 S3 存储桶策略或访问控制列表 (ACL) 应用于 S3 存储桶 CloudTrail 日志以防止公众访问 CloudTrail 日志。允许公有访问 CloudTrail 日志内容可以帮助攻击者识别受影响账户的使用或配置中的弱点。

要运行此检查,Security Hub 首先使用自定义逻辑来查找您的 S3 存储桶 CloudTrail 日志被存储。然后,它使用 Amazon Config 托管规则检查是否可公开访问存储桶。

如果您将日志聚合到单个集中式 S3 存储桶中,则 Security Hub 仅对集中式 S3 存储桶所在的账户和区域运行检查。对于其他账户和区域,控制状态为没有数据.

如果存储桶可以公开访问,则检查会生成一个失败的调查结果。

修复

删除 Amazon S3 存储桶的公有访问权限

  1. 通过以下网址打开 Simple Storage Service(Amazon S3)控制台:https://console.aws.amazon.com/s3/

  2. 选择您所在存储桶的名称 CloudTrail 已存储。

  3. 选择 Permissions (权限),然后选择 Public access settings (公有访问权限) 设置。

  4. 选择 Edit (编辑),选择所有四个选项,然后选择 Save (保存)

  5. 如果出现提示,输入 confirm,然后选择 Confirm (确认)

2.4 — 确保 CloudTrail 跟踪已与亚马逊集成 CloudWatch 日志

Severity:

Amazon Config 规则:cloud-trail-cloud-watch-logs-enabled

Schedule 类型:定期

CloudTrail 是一个记录的 Web 服务Amazon在给定账户中进行的 API 调用。记录的信息包括 API 调用者的身份、API 调用的时间、API 调用者的源 IP 地址、请求参数以及 Amazon 服务返回的响应元素。

CloudTrail 使用 Amazon S3 进行日志文件存储和传输,因此日志文件可以持久存储。除了捕获 CloudTrail 指定的 Amazon S3 存储桶中的日志用于长期分析,您可以通过配置来执行实时分析 CloudTrail 将日志发送到 CloudWatch 日志。

对于在账户的所有区域中启用的跟踪, CloudTrail 将来自所有这些区域的日志文件发送到 CloudWatch 日志日志组。

CIS 建议您发送 CloudTrail 登录到 CloudWatch 日志。

注意

本建议的目的是确保账户活动得到捕获、监控和适当的警报。 CloudWatch 日志是使用以下方法完成此操作的本机方法Amazon服务,但不排除使用替代解决方案。

发送中 CloudTrail 登录到 CloudWatch 日志便于根据用户、API、资源和 IP 地址记录实时和历史活动。它提供了为异常或敏感账户活动建立警报和通知的机会。

修复

为了确保 CloudTrail 步道与 CloudWatch 日志

  1. 打开 CloudTrail 控制台位于https://console.aws.amazon.com/cloudtrail/.

  2. 选择 Trails (跟踪)

  3. 选择一条没有价值的路线CloudWatch日志组输入。

  4. 向下滚动到CloudWatch 日志部分,然后选择编辑.

  5. 选中 Enabled (启用) 复选框。

  6. 对于日志组,执行以下操作之一:

    • 要使用现有日志组,请选择现有然后输入要使用的日志组的名称。

    • 要创建新的日志组。new然后输入要创建的日志组的名称。

  7. 对于 IAM role (IAM 角色),执行以下操作之一:

    • 要使用现有角色,请选择现有然后从下拉列表选择角色。

    • 要创建新角色,请选择new然后输入要创建的角色的名称。将为新角色分配一个策略以授予所需的权限。

      要查看授予该角色的权限,请展开策略文档.

  8. 选择 Save changes(保存更改)。

有关更多信息,请参阅 。配置 CloudWatch 使用控制台监控日志在里面Amazon CloudTrail用户指南.

2.5 — 确保Amazon Config已启用

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

Amazon Config 是一种 Web 服务,可对您账户中支持的 Amazon 资源执行配置管理,并为您提供日志文件。记录的信息包括配置项(Amazon 资源)、配置项之间的关系(Amazon 资源)以及资源之间的任何配置更改。

CIS 建议您启用Amazon Config在所有区域。Amazon Config 捕获的 Amazon 配置项历史记录可用于安全分析、资源更改跟踪和合规性审计。

注意

CIS 2.5 要求Amazon Config在您使用Security Hub 的所有区域中均已启用。

由于 Security Hub 是一项区域服务,因此对此控制执行的检查仅检查该账户的当前区域。它不会检查所有区域。

您还必须记录全局资源,以便能在每个区域中检查针对全局资源的安全检查。如果您仅在一个区域中记录全局资源,则可以在所有区域(记录全局资源的区域除外)中禁用此控件。

要运行此检查,Security Hub 会执行自定义逻辑来执行中为其规定的审计步骤CAmazon基础基准 v1.2. Security Hub 还要求在每个区域记录全球资源,因为 Security Hub 是一项区域性服务,会逐个区域执行安全检查。

修复

配置 Amazon Config 设置

  1. 通过以下网址打开 Amazon Config 控制台:https://console.aws.amazon.com/config/

  2. 选择要在其中配置 Amazon Config 的区域。

  3. 如果你还没用过Amazon ConfigSecure Fore开始使用在里面Amazon Config开发人员指南.

  4. 从菜单导航到 “设置” 页面,然后执行以下操作:

    • 选择 Edit(编辑)。

    • 下面要记录的资源类型,select记录该地区支持的所有资源包括全球资源(例如AmazonIAM 资源.

    • 下面数据保留期,请选择默认的保留期Amazon Config数据,或者指定自定义保留期。

    • 下面Amazon Config角色,要么选择CreateAmazon Config服务相关角色或者选择从您的账户中选择一个角色然后选择要使用的角色。

    • Amazon S3 bucket (Amazon S3 存储桶) 下面,指定要使用的存储桶,或者创建存储桶并包括前缀(可选)。

    • 下面Amazon SNS 主题,从您的账户中选择一个 Amazon SNS 主题或创建一个。有关 Amazon SNS 的更多信息,请参阅 Amazon SNSAmazon Simple Notification A.

  5. 选择 Save(保存)。

有关使用的更多信息Amazon Config来自 的Amazon Command Line Interface, see 启用Amazon Config在里面Amazon Config开发人员指南.

您还可以使用 Amazon CloudFormation 模板自动执行这一过程。有关更多信息,请参阅 。Amazon CloudFormation StackSets 示例模板在里面Amazon CloudFormation用户指南.

2.6 — 确保在上启用 S3 存储区访问日志记录 CloudTrail S3 存储桶

Severity:

Amazon Config 规则:s3-bucket-logging-enabled

Schedule 类型:定期

Amazon S3 存储桶访问日志会生成一个日志,其中包含对您的 S3 存储桶发出的每个请求的访问记录。访问日志记录包含与请求有关的详细信息,如请求类型、处理过的请求中指定的资源和请求的处理时间和日期。

CIS 建议您在上启用存储区访问日志记录 CloudTrail S3 存储桶。

通过在目标 S3 存储桶上启用 S3 存储桶日志记录,您可以捕获可能影响目标存储桶中对象的所有事件。将日志配置为存放在单独的存储桶中可实现对日志信息的访问,这在安全和事故响应工作流程中非常有用。

要运行此检查,Security Hub 首先使用自定义逻辑来查找您所在的存储桶 CloudTrail 日志被存储,然后使用Amazon Config托管规则,用于检查日志记录是否已启用。

如果您将日志聚合到单个集中式 S3 存储桶中,则 Security Hub 仅对集中式 S3 存储桶所在的账户和区域运行检查。对于其他账户和区域,控制状态为没有数据.

如果存储桶可以公开访问,则检查会生成一个失败的调查结果。

修复

启用 S​​3 存储桶访问日志记录

  1. 通过以下网址打开 Simple Storage Service(Amazon S3)控制台:https://console.aws.amazon.com/s3/

  2. 选择用于存储的存储桶 CloudTrail.

  3. 请选择属性

  4. 选择 Server access logging (服务器访问日志记录),然后选择启用日志记录

  5. Target bucket (目标存储桶) 列表中选择一个存储桶(并可选择输入前缀)。

  6. 选择 Save(保存)。

2.7 — 确保 CloudTrail 使用静态加密日志Amazon KMS keys

Severity:

Amazon Config 规则:cloud-trail-encryption-enabled

Schedule 类型:定期

CloudTrail 是一个记录的 Web 服务Amazon对账户进行 API 调用,并根据 IAM 策略将这些日志提供给用户和资源。Amazon Key Management Service(Amazon KMS)是一项托管服务,可帮助创建和控制用于加密账户数据的加密密钥,并使用硬件安全模块 (HSM) 来保护加密密钥的安全。

你可以配置 CloudTrail 日志利用服务器端加密 (SSE) 和 KMS 密钥进一步保护 CloudTrail 日志。

CIS 建议您配置 CloudTrail 使用 SSE-KMS。

配置 CloudTrail 使用 SSE-KMS 可对日志数据提供额外的机密性控制,因为给定用户必须对相应的日志存储桶拥有 S3 读取权限,并且必须获得 KMS 密钥策略的解密权限。

修复

为启用加密 CloudTrail 圆木

  1. 打开 CloudTrail 控制台位于https://console.aws.amazon.com/cloudtrail/.

  2. 选择 Trails (跟踪)

  3. 选择要更新的跟踪。

  4. Storage location (存储位置) 下,选择铅笔图标以编辑设置。

  5. 对于 Encrypt log files with SSE-KMS (使用 SSE-KMS 加密日志文件),选择 Yes (是)

  6. 对于 Create a new KMS key (创建新的 KMS 密钥),执行以下操作之一:

    • 要创建密钥,请选择 Yes (是),然后在 KMS key (KMS 密钥) 字段中输入密钥的别名。密钥在与存储桶相同的区域中创建。

    • 要使用现有密钥,请选择 No (否),然后从 KMS key (KMS 密钥) 列表中选择密钥。

    注意

    Amazon KMS 密钥和 S3 存储桶必须位于同一区域。

  7. 选择 Save(保存)。

您可能需要修改以下策略 CloudTrail 成功与您的 KMS 密钥交互。有关更多信息,请参阅 。加密 CloudTrail 日志日志文件Amazon KMS—托管密钥 (SSE-KMS)在里面Amazon CloudTrail用户指南.

2.8 — 确保启用客户创建的 KMS 密钥的轮换

Severity:

Amazon Config 规则:cmk-backing-key-rotation-enabled

Schedule 类型:定期

Amazon KMS允许客户轮换备用密钥,后备密钥是存储在Amazon KMS并与 KMS 密钥的密钥 ID。备用密钥被用于执行加密操作,例如加密和解密。目前,自动密钥轮换会保留所有之前的备用密钥,以便解密已加密数据的操作可以不被察觉地进行。

CIS 建议您启用 KMS 密钥轮换。轮换加密密钥有助于减少遭盗用密钥的潜在影响,因为使用可能已泄露的先前密钥无法访问使用新密钥加密的数据。

修复

启用 KMS 密钥轮换

  1. 在 Amazon KMShttps://console.aws.amazon.com/kms 打开 控制台。

  2. 要更改 Amazon Web Services 区域,请使用页面右上角的 Region selector(区域选择器)。

  3. 选择 Customer managed keys (客户托管密钥)

  4. Alias (别名) 列中选择要更新的密钥的别名。

  5. 选择 Key rotation (密钥轮换)

  6. Select每年自动轮换此 KMS 密钥然后选择Save(保存).

2.9 — 确保在所有 VPC 中启用 VPC 流量记录

Severity:

Amazon Config 规则:vpc-flow-logs-enabled

Schedule 类型:定期

利用 VPC 流日志这项功能,您可以捕获有关传入和传出您的 VPC 中网络接口的 IP 流量的信息。创建流日志后,您可以在中查看和检索其数据 CloudWatch 日志。

CIS 建议您为 VPC 的数据包拒绝启用流量记录。流日志提供对穿过 VPC 的网络流量的可见性,并可在安全工作流程中检测异常流量或见解。

修复

启用 VPC 流日志记录

  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 选择 Your VPCs (您的 VPC)

  3. 选择要更新的 VPC。

  4. 选择页面底部的 Flow Logs (流日志) 选项卡。

  5. 选择 Create flow log(创建流日志)

  6. 对于 Filter (筛选条件),选择 Reject (拒绝)

  7. 对于 Destination log group (目标日志组),选择要使用的日志组。

  8. 对于IAM 角色,选择要使用的 IAM 角色。

  9. 选择 Create(创建)。

3.1 — 确保针对未授权的 API 调用存在日志指标筛选条件和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

你可以通过指导来实时监控 API 调用 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您创建指标筛选器并对未经授权的 API 调用发出警报。监控未经授权的 API 调用有助于发现应用程序错误,并可能减少检测恶意活动所花费的时间。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.1 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security Hub 会生成WARNING对照调查结果。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题,接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. 打开 CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.errorCode="*UnauthorizedOperation") || ($.errorCode="AccessDenied*")}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您需要在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,对于Statistic,选择平均值. 有关可用统计数据的更多信息,请参阅统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.1-UnauthorizedAPICalls。然后选择下一步

  13. 下面预览并创建,查看警报配置。然后选择 Create alarm (创建警报)

3.2 — 确保存在日志指标筛选条件和警报Amazon Web Services Management Console不使用 MFA 登录

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

你可以通过指导来实时监控 API 调用 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您创建不受 MFA 保护的指标筛选条件和警报控制台登录。监控单因素控制台登录可提高不受 MFA 保护的账户的可见性。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.2 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照调查结果。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. 打开 CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      { ($.eventName = "ConsoleLogin") && ($.additionalEventData.MFAUsed != "Yes") && ($.userIdentity.type = "IAMUser") && ($.responseElements.ConsoleLogin = "Success") }
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您需要在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.2-ConsoleSigninWithoutMFA。然后选择下一步

  13. 下面预览并创建,查看警报配置。然后选择 Create alarm (创建警报)

3.3 — 确保存在使用根用户的日志指标筛选条件和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以实时监控 API 调用定向 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您为 root 用户登录尝试创建指标筛选条件和警报。通过监控 root 用户的登录,可以了解完全特权账户的使用情况,并有机会减少该账户的使用。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.3 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. 打开 CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {$.userIdentity.type="Root" && $.userIdentity.invokedBy NOT EXISTS && $.eventType !="AwsServiceEvent"}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您需要在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,RootAccountUsage。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.4 — 确保存在针对 IAM 策略更改的日志指标筛选条件和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您为 IAM 策略的更改创建指标筛选条件和警报。监控此类更改有助于确保身份验证和授权控制保持不变。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.4 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

请注意,警报按名称检查特定的 API 操作。其中一项操作是DeletePolicy. 警报不检查呼叫是否是从 IAM 发出的。因此,在 Auto Scaling 调用时也会触发警报DeletePolicy.

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. 打开 CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=DeleteGroupPolicy) || ($.eventName=DeleteRolePolicy) || ($.eventName=DeleteUserPolicy) || ($.eventName=PutGroupPolicy) || ($.eventName=PutRolePolicy) || ($.eventName=PutUserPolicy) || ($.eventName=CreatePolicy) || ($.eventName=DeletePolicy) || ($.eventName=CreatePolicyVersion) || ($.eventName=DeletePolicyVersion) || ($.eventName=AttachRolePolicy) || ($.eventName=DetachRolePolicy) || ($.eventName=AttachUserPolicy) || ($.eventName=DetachUserPolicy) || ($.eventName=AttachGroupPolicy) || ($.eventName=DetachGroupPolicy)}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您需要在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,对于Statistic,选择平均值. 有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.4-IAMPolicyChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.5 — 确保存在日志指标筛选条件和警报 CloudTrail 配置更改

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您为指标的更改创建指标筛选条件和警报 CloudTrail配置设置。监控此类更改有助于确保账户中活动的持续可见性。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控件 3.5 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. 打开 CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=CreateTrail) || ($.eventName=UpdateTrail) || ($.eventName=DeleteTrail) || ($.eventName=StartLogging) || ($.eventName=StopLogging)}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您需要在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.5-CloudTrailChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.6 — 确保存在日志指标筛选条件和警报Amazon Web Services Management Console身份验证失败

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您为失败的控制台身份验证尝试创建指标筛选条件和警报。监控失败的控制台登录可能会缩短检测暴力破解凭证尝试的准备时间,这可能会提供可供您在其他事件相关性分析中使用的指标,例如源 IP。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.6 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=ConsoleLogin) && ($.errorMessage="Failed authentication")}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.6-ConsoleAuthenticationFailure。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.7 — 确保存在禁用或计划删除客户管理密钥的日志指标筛选器和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您为状态已更改为禁用或计划删除的客户管理的密钥创建指标筛选条件和警报。您无法再访问使用已禁用或已删除的密钥加密的数据。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.7 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。如果出现以下情况,则控制也会失败ExcludeManagementEventSources包含kms.amazonaws.com.

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventSource=kms.amazonaws.com) && (($.eventName=DisableKey) || ($.eventName=ScheduleKeyDeletion))}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.7-DisableOrDeleteCMK。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.8 — 确保存在针对 S3 存储桶策略更改的日志指标筛选条件和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您为 S3 存储桶策略的更改创建指标筛选条件和警报。监控此类更改可能会缩短检测和纠正敏感 S3 存储桶的宽松策略的时间。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控件 3.8 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventSource=s3.amazonaws.com) && (($.eventName=PutBucketAcl) || ($.eventName=PutBucketPolicy) || ($.eventName=PutBucketCors) || ($.eventName=PutBucketLifecycle) || ($.eventName=PutBucketReplication) || ($.eventName=DeleteBucketPolicy) || ($.eventName=DeleteBucketCors) || ($.eventName=DeleteBucketLifecycle) || ($.eventName=DeleteBucketReplication))}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,对于Statistic,选择平均值. 有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面告警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.8-S3BucketPolicyChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.9 — 确保存在日志指标筛选条件和警报Amazon Config配置更改

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。

CIS 建议您为指标的更改创建指标筛选条件和警报Amazon Config配置设置。监控此类更改有助于确保账户中配置项的持续可见性。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.9 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventSource=config.amazonaws.com) && (($.eventName=StopConfigurationRecorder) || ($.eventName=DeleteDeliveryChannel) || ($.eventName=PutDeliveryChannel) || ($.eventName=PutConfigurationRecorder))}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.9-AmazonConfigChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.10 — 确保存在日志指标筛选条件和安全组更改警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。安全组是有状态的数据包筛选器,可用于控制 VPC 的传入和传出流量。

CIS 建议您为安全组的更改创建指标筛选条件和警报。监控此类更改有助于确保不会意外公开 资源和服务。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.10 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果是FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=AuthorizeSecurityGroupIngress) || ($.eventName=AuthorizeSecurityGroupEgress) || ($.eventName=RevokeSecurityGroupIngress) || ($.eventName=RevokeSecurityGroupEgress) || ($.eventName=CreateSecurityGroup) || ($.eventName=DeleteSecurityGroup)}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.10-SecurityGroupChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.11 — 确保存在网络访问控制列表 (NACL) 更改的日志指标筛选器和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。NACL 用作无状态的数据包筛选器,可用于控制 VPC 中子网的传入和传出流量。

CIS 建议您创建指标筛选器并针对 NACL 的更改发出警报。监控此类更改有助于确保不会意外公开 Amazon 资源和服务。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.11 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面Defore,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=CreateNetworkAcl) || ($.eventName=CreateNetworkAclEntry) || ($.eventName=DeleteNetworkAcl) || ($.eventName=DeleteNetworkAclEntry) || ($.eventName=ReplaceNetworkAclEntry) || ($.eventName=ReplaceNetworkAclAssociation)}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明警报。例如,CIS-3.11-NetworkACLChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.12 — 确保存在日志指标筛选条件和网络网关变更警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。需要网络网关才能向位于 VPC 以外的目标发送流量或从其接收流量。

CIS 建议您为网络网关的更改创建指标筛选条件和警报。监控此类更改有助于确保所有传入和传出流量都通过受控路径穿过 VPC 边界。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.12 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面定义模式,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=CreateCustomerGateway) || ($.eventName=DeleteCustomerGateway) || ($.eventName=AttachInternetGateway) || ($.eventName=CreateInternetGateway) || ($.eventName=DeleteInternetGateway) || ($.eventName=DetachInternetGateway)}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,保留默认值。有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明用于告警。例如,CIS-3.12-NetworkGatewayChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.13 — 确保存在路由表更改的日志指标筛选条件和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。路由表在子网和网络网关之间路由网络流量。

CIS 建议您为路由表的更改创建指标筛选条件和警报。监控此类更改有助于确保所有 VPC 流量都流经预期路径。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.13 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面定义模式,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=CreateRoute) || ($.eventName=CreateRouteTable) || ($.eventName=ReplaceRoute) || ($.eventName=ReplaceRouteTableAssociation) || ($.eventName=DeleteRouteTable) || ($.eventName=DeleteRoute) || ($.eventName=DisassociateRouteTable)}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,请输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,对于Statistic,选择平均值. 有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明用于告警。例如,CIS-3.13-RouteTableChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

3.14 — 确保 VPC 更改存在日志指标筛选条件和警报

Severity:

Amazon Config规则 None(无)

Schedule 类型:定期

您可以通过指导对 API 调用进行实时监控 CloudTrail 登录到 CloudWatch 记录并建立相应的指标筛选条件和警报。您可以在一个账户中拥有多个 VPC,并在两个 VPC 之间创建对等连接,从而使网络流量能够在 VPC 之间路由。

CIS 建议您为 VPC 的变化创建指标筛选条件和警报。监控此类更改有助于确保身份验证和授权控制保持不变。

要运行此检查,Security Hub 使用自定义逻辑来执行中为控制 3.14 规定的确切审计步骤CAmazon基础基准 v1.2. 如果不使用 CIS 规定的确切度量筛选条件,则此控制将会失败。不能向指标筛选条件中添加附加其他字段或搜索词。

注意

当 Security Hub 对此控件执行检查时,它会查找 CloudTrail 当前账户使用的线索。这些跟踪可能是属于另一个账户的组织跟踪。多区域路线也可能位于不同的区域。

检查结果FAILED在以下情况下:

  • 未配置任何跟踪。

  • 当前区域内且由往来账户拥有的可用跟踪不符合控制要求。

检查得出的控制状态为NO_DATA在以下情况下:

  • 多区域路线位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查结果。

  • 多区域跟踪属于不同的账户。Security Hub 只能为拥有跟踪的账户生成调查结果。

对于警报,当前账户必须拥有引用的 Amazon SNS 主题,或者必须通过调用来获得 Amazon SNS 主题的访问权限ListSubscriptionsByTopic. 否则Security HubWARNING对照发现。

修复

修复此问题的步骤包括设置 Amazon SNS 主题, CloudTrail跟踪、指标筛选条件筛选条件筛选条件创建警报。

创建 Amazon SNS 主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 创建 Amazon SNS 主题以接收所有 CIS 警报。

    为该主题创建至少一个订阅者。有关更多信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 Amazon SNS 入门

接下来,设置一个 CloudTrail 这适用于所有区域。为此,请按照2.1 — 确保 CloudTrail 在所有区域中均已启用中的修复步骤进行操作。

记下名称 CloudWatch 与您关联的日志日志组 CloudTrail 跟踪 您可以为该日志组创建指标筛选条件。

最后,创建指标筛选条件和警报。

创建指标筛选条件和警报

  1. Open the CloudWatch 控制台位于https://console.aws.amazon.com/cloudwatch/.

  2. 在导航窗格中,选择 Log groups(日志组)

  3. 选中对应的复选框 CloudWatch 与之关联的日志组 CloudTrail 你创建的线索。

  4. From操作,选择创建指标筛选条件.

  5. 下面定义模式,执行以下操作:

    1. 复制以下模式,然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

      {($.eventName=CreateVpc) || ($.eventName=DeleteVpc) || ($.eventName=ModifyVpcAttribute) || ($.eventName=AcceptVpcPeeringConnection) || ($.eventName=CreateVpcPeeringConnection) || ($.eventName=DeleteVpcPeeringConnection) || ($.eventName=RejectVpcPeeringConnection) || ($.eventName=AttachClassicLinkVpc) || ($.eventName=DetachClassicLinkVpc) || ($.eventName=DisableVpcClassicLink) || ($.eventName=EnableVpcClassicLink)}
    2. 选择 Next(下一步)。

  6. 下面分配指标,执行以下操作:

    1. 筛选器名称,输入指标筛选条件的名称。

    2. 对于指标命名空间输入LogMetrics.

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间,则所有 CIS Benchmark 指标将组合在一起。

    3. 对于指标名称输入指标的名称。记住指标的名称。您可以在创建警报时选择指标。

    4. 对于 Metric value(指标值),输入 1

    5. 选择 Next(下一步)。

  7. 下面审核和创建,验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件.

  8. 选择指标筛选条件选项卡,然后选择刚刚创建的指标筛选条件选择刚刚创建的指标筛选条件选择刚创建的

    要选择指标筛选器,请选中右上角的复选框。

  9. 选择 Create Alarm(创建告警)

  10. 下面指定指标和条件,执行以下操作:

    1. 下面指标,对于Statistic,选择平均值. 有关可用统计数据的更多信息,请参阅。统计数据在里面亚马逊 CloudWatch 用户指南.

    2. 下面条件,对于Threshold,选择静态.

    3. 对于定义警报条件,选择大于/等于.

    4. 对于定义阈值输入1.

    5. 选择 Next(下一步)。

  11. 下面配置操作,执行以下操作:

    1. 下面警报状态触发器,选择警报.

    2. Select an SNS topic (选择 SNS 主题) 下,选择 Select an existing SNS topic (选择现有的 SNS 主题)

    3. 对于Send a notification to (发送通知到),输入您在上一流程中创建的 SNS 主题的名称。

    4. 选择 Next(下一步)。

  12. 下面添加名称和描述,输入名称说明用于告警。例如,CIS-3.14-VPCChanges。然后选择下一步

  13. 下面预览和创建,查看警报配置。然后选择 Create alarm (创建警报)

4.1 — 确保没有安全组允许从 0.0.0.0.0/0 进入端口 22

Severity:

Amazon Config 规则:restricted-ssh

Schedule 类型:变更触发器

安全组为 Amazon 资源提供传入和传出网络流量的有状态筛选。

CIS 建议任何安全组都不允许对端口 22 进行不受限制的入口访问。删除与 SSH 等远程控制台服务的自由连接可减少服务器暴露的风险。

注意

以下区域不支持此控制。

  • 非洲(开普敦)

  • 亚太地区(大阪)

  • 欧洲(米兰)

修复

对与 VPC 关联的每个安全组执行以下步骤。

  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 在左侧窗格中,选择安全组

  3. 选择一个安全组。

  4. 在页面底部,选择 Inbound Rules (入站规则) 选项卡。

  5. 选择 Edit rules (编辑规则)

  6. 确定允许通过端口 22 进行访问的规则,然后选择 X 将其删除。

  7. 选择 Save rules(保存规则)。

4.2 — 确保没有安全组允许从 0.0.0.0.0/0 进入端口 3389

严重性:

Amazon Config 规则:restricted-common-ports

Schedule 类型:变更触发器

关联的名称Amazon Config托管规则是 restricted-common-ports. 但是,创建的规则使用名称restricted-rdp.

安全组为 Amazon 资源提供传入和传出网络流量的有状态筛选。

CIS 建议任何安全组都不允许对端口 3389 进行不受限制的入口访问。删除与 RDP 等远程控制台服务的自由连接可减少服务器暴露的风险。

注意

以下区域不支持此控制。

  • 非洲(开普敦)

  • 亚太地区(大阪)

  • 欧洲(米兰)

修复

对与 VPC 关联的每个安全组执行以下步骤。

  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 在左侧窗格中,选择安全组

  3. 选择一个安全组。

  4. 在页面底部,选择 Inbound Rules (入站规则) 选项卡。

  5. 选择 Edit rules (编辑规则)

  6. 确定允许通过端口 3389 进行访问的规则,然后选择 X 将其删除。

  7. 选择 Save rules(保存规则)。

4.3 — 确保每个 VPC 的默认安全组限制所有流量

严重性:

Amazon Config 规则:vpc-default-security-group-closed

Schedule 类型:变更触发器

VPC 会生成默认安全组,它的初始设置将拒绝所有入站数据流、允许所有出站数据流、以及允许在分配到您的安全组的实例间的所有数据流。如果您在启动实例时未指定安全组,实例将自动关联到默认安全组。安全组为 Amazon 资源提供传入和传出网络流量的有状态筛选。

CIS 建议默认安全组限制所有流量。

更新要确保合规的每个区域中默认 VPC 的默认安全组。任何新的 VPC 都自动包含默认安全组,您需要对该默认安全组进行修复,以遵守此建议。

注意

在实施此建议时,您可以使用启用的 VPC 流量记录2.9 — 确保在所有 VPC 中启用 VPC 流量记录 ,用于确定系统正常运行所需的最低权限端口访问权限。VPC 流量记录可以记录当前安全组下发生的所有数据包接受和拒绝。

将所有 VPC 默认安全组配置为限制所有流量鼓励开发最低权限安全组并谨慎放置Amazon资源放入安全组。这反过来又减少了这些资源的暴露量。

修复

更新默认安全组以限制所有访问

  1. 通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/

  2. 查看默认安全组详细信息以了解分配给它们的资源。

  3. 为资源创建一组最小权限安全组。

  4. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  5. 在 Amazon EC2 控制台上,将使用默认安全组的资源的安全组更改为您创建的最低权限安全组。

  6. 对于每个默认安全组,请选择 Inbound (入站) 选项卡并删除所有入站规则。

  7. 对于每个默认安全组,请选择 Outbound (出站) 选项卡并删除所有出站规则。

有关更多信息,请参阅 Amazon VPC 用户指南中的使用安全组