CIS AWS Foundations 基准版本 1.3 级别 2 的运营最佳实践 - AWS Config
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

CIS AWS Foundations 基准版本 1.3 级别 2 的运营最佳实践

一致性包提供了通用的合规性框架,旨在使您能够使用托管或自定义 AWS Config 规则以及 AWS Config 修正操作来创建安全、操作或成本优化监管检查。作为示例模板的一致性包并非旨在完全确保符合特定监管或合规性标准。您有责任评估您对服务的使用是否符合适用的法律法规要求。

下面提供了 Center for Internet Security (CIS) Amazon Web Services Foundation v1.3 Level 2 和 AWS Managed Config rules/AWS Config 进程检查之间的示例映射。每个 Config 规则适用于特定的 AWS 资源,并且与一个或多个 CIS Amazon Web Services Foundation v1.3 第 2 级控件关联。CIS Amazon Web Services Foundation v1.3 级别 2 控制可与多个 Config 规则关联。有关与这些映射相关的更多详细信息和指导,请参阅下表。

有关进程检查的更多信息,请参阅AWS Config Process Checks Within a Conformance Pack

AWS 区域: 所有支持的 AWS 区域(中东(巴林) 除外)

控制 ID AWS Config 规则 指南
1.1 account-contact-details-configured (进程检查) 确保 AWS 账户的联系人电子邮件和电话号码是最新的,并映射到您组织中的多个个人。在 控制台的“My Account (我的账户)”部分中,确保在“Contact Information (联系信息)”部分中指定了正确的信息。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.2 account-security-contact-configured (进程检查) 确保您的组织安全团队的联系人电子邮件和电话号码是最新的。在 AWS 管理控制台的“My Account (我的账户)”部分中,确保在“Security (安全性)”部分中指定了正确的信息。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.3 account-security-issues-configured (过程检查) 确保已配置可用于对调用 AWS 客户服务以获取支持的个人进行身份验证的安全问题。在 AWS 管理控制台的“My Account (我的账户)”部分中,确保配置了三个安全质询问题。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.4

iam-root-access-key-check

通过检查根用户是否将访问密钥附加到其 AWS Identity and Access Management (IAM) 角色,可以控制对系统和资产的访问。确保删除根访问密钥。相反,创建和使用基于角色的 AWS 账户,以帮助遵循最少功能原则。
1.5

通过确保为根用户启用 MFA 来管理对 AWS 云中资源的访问。根用户是 AWS 账户中权限最高的用户。MFA 为用户名和密码添加了额外的保护层。通过要求根用户使用 MFA,您可以减少遭盗用 AWS 账户的事件。
1.6

通过确保为根用户启用硬件 MFA 来管理对 AWS 云中资源的访问。根用户是 AWS 账户中权限最高的用户。MFA 为用户名和密码添加了额外的保护层。通过要求根用户使用 MFA,您可以减少遭盗用 AWS 账户的事件。
1.7 root-account-regular-use (进程检查) 确保避免在日常任务中使用根账户。在 IAM 中,运行凭证报告以检查上次使用根用户的时间。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.8

iam-password-policy

将根据组织 IAM 密码策略颁发、管理和验证身份和凭证。它们符合或超过 NIST SP 800-63 和 AWS 基础安全最佳实践标准中有关密码强度的要求。此规则允许您选择设置 RequireUppercaseCharacters(AWS 基础安全最佳实践值:true)、RequireLowercaseCharacters(AWS 基础安全最佳实践值:true)、RequireSymbols(AWS 基础安全最佳实践值:true)、RequireNumbers(AWS 基础安全最佳实践值:true)、MinimumPasswordLength(AWS 基础安全最佳实践值:14)、PasswordReusePrevention(AWS 基础安全最佳实践值:24)和 MaxPasswordAge(AWS 基础最佳实践值:90)。实际值应反映您组织的策略。
1.9

iam-password-policy

将根据组织 IAM 密码策略颁发、管理和验证身份和凭证。它们符合或超过 NIST SP 800-63 和 AWS 基础安全最佳实践标准中有关密码强度的要求。此规则允许您选择设置 RequireUppercaseCharacters(AWS 基础安全最佳实践值:true)、RequireLowercaseCharacters(AWS 基础安全最佳实践值:true)、RequireSymbols(AWS 基础安全最佳实践值:true)、RequireNumbers(AWS 基础安全最佳实践值:true)、MinimumPasswordLength(AWS 基础安全最佳实践值:14)、PasswordReusePrevention(AWS 基础安全最佳实践值:24)和 MaxPasswordAge(AWS 基础最佳实践值:90)。实际值应反映您组织的策略。
1.10

mfa-enabled-for-iam-console-access

通过确保为所有具有控制台密码的 AWS Identity and Access Management (IAM) 用户启用 MFA 来管理对 AWS 云中资源的访问。MFA 在用户名和密码之上增加了一层额外的防护。通过要求 IAM 用户使用 MFA,您可以减少遭盗用账户的事件,并防止敏感数据被未经授权的用户访问。
1.11 iam-user-console-and-api-access-at-creation(进程检查) 确保在初始用户设置期间未为具有控制台密码的所有 IAM 用户设置访问密钥。对于所有具有控制台访问权限的 IAM 用户,请将用户“创建时间”与访问密钥“已创建”日期进行比较。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.12

iam-user-unused-credentials-check

AWS Identity and Access Management (IAM) 可通过检查在指定时间段内未使用的 IAM 密码和访问密钥来帮助您获得访问权限和授权。如果标识了这些未使用的凭证,则应禁用和/或删除这些凭证,因为这可能会违反最小权限原则。此规则要求您将值设置为 maxCredentialUsageAge(配置默认值:90)。实际值应反映您组织的策略。
1.13 iam-user-single-access-key (进程检查) 确保任何单个 IAM 用户都只有一个可用的活动访问密钥。对于所有 IAM 用户,检查 IAM 中每个用户的“Security Credentials (安全凭证)”选项卡中是否仅使用了一个有效密钥。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.14

access-keys-rotated

通过确保根据组织策略轮换 IAM 访问密钥,审核已授权设备、用户和流程的凭证。定期更改访问密钥是一种安全最佳实践。它缩短了访问密钥处于活动状态的期间,并减小密钥泄露时对业务的影响。此规则需要访问密钥轮换值(配置默认值:90)。实际值应反映您组织的策略。
1.15

iam-user-no-policies-check

此规则确保 AWS Identity and Access Management (IAM) 策略仅附加到组或角色来控制对系统和资产的访问。在组或角色级别分配权限有助于减少身份收到或保留过多权限的机会。
1.15

iam-no-inline-policy-check

确保 AWS Identity and Access Management (IAM) 用户、IAM 角色或 IAM 组没有控制对系统和资产的访问的内联策略。AWS 建议使用托管策略而不是内联策略。托管策略允许重用、版本控制和回滚以及委派权限管理。
1.15

iam-user-group-membership-check

AWS Identity and Access Management (IAM) 通过确保 IAM 用户是至少一个组的成员,可帮助您限制访问权限和授权。允许用户拥有比完成任务所需权限更多的权限可能会违反最小权限原则和职责共担原则。
1.16

iam-policy-no-statements-with-admin-access

AWS Identity and Access Management (IAM) 可帮助您遵循最低特权原则和访问权限和授权责任拆分原则,限制策略包含“效果”:“Allow”,在“Resource”上包含“Action”:“*”:“*”。 允许用户拥有比完成任务所需的权限更多的权限可能会违反最低权限和职责分离原则。
1.17 iam-support-role-created(进程检查) 确保已创建支持角色以通过 AWS Support 管理事件。检查 AWSSupportAccess 策略是否已附加到 IAM 角色。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.18 ec2-instance-role-assigned (进程检查) 对于已知执行 AWS 操作的实例,请确保它们属于具有必要权限的实例角色。在 AWS 管理控制台的 EC2 部分中,选择实例并检查是否填充了 IAM 角色字段。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.19 iam-expired-certificates(进程检查) 确保删除存储在 IAM 中的所有已过期 SSL/TLS 证书。在命令行中,安装的 AWS CLI 运行“aws iam list-server-certificates”命令并确定是否存在任何过期的服务器证书。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.20

s3-account-level-public-access-blocks

通过确保 Amazon Simple Storage Service (Amazon S3) 存储桶不可公开访问,在 AWS 云中管理对资源的访问。此规则通过防止公有访问来帮助使敏感数据对未经授权的远程用户安全。此规则允许您选择性地设置 ignorePublicAcls(配置默认值:True)、blockPublicPolicy(配置默认值:True)、blockPublicAcls(配置默认值:True)和 restrictPublicBuckets 参数(配置默认值:True)。实际值应反映您组织的策略。
1.21 iam-access-analyzer-enabled (进程检查) 确保已启用 IAM Access Analyzer。在 控制台的 IAM 部分中,选择“Access Analyzer (访问分析器)”,并确保 STATUS 设置为“Active (活动)”。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
1.22 iam-central-user-management(流程检查) 确保通过联合身份验证或多账户环境的 AWS Organizations 集中管理 IAM 用户。在 AWS 管理控制台的 IAM 部分中,确认不存在代表个人的 IAM 用户。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
2.1.1

为了帮助保护静态数据,请确保为您的 Amazon Simple Storage Service (Amazon S3) 存储桶启用了加密。由于敏感数据可存在于 Amazon S3 存储桶中,因此,请启用加密以帮助保护该数据。
2.1.2

为了帮助保护传输中的数据,请确保您的 Amazon Simple Storage Service (Amazon S3) 存储桶需要请求使用安全套接字层 (SSL)。由于敏感数据可以存在,因此启用传输中加密以保护该数据。
2.2.1

ec2-ebs-encryption-by-default

为了帮助保护静态数据,请确保为您的 Amazon Elastic Block Store (Amazon EBS) 卷启用了加密。由于敏感数据可存在于这些卷中,因此启用静态加密以帮助保护这些数据。
2.2.1

由于敏感型数据可以存在并有助于保护静态数据,因此请确保为您的 Amazon Elastic Block Store (Amazon EBS) 卷启用了加密。
3.1

multi-region-cloudtrail-enabled

AWS CloudTrail 记录 AWS 管理控制台操作和 API 调用。您可以标识哪些用户和账户调用了 AWS、从中发出调用的源 IP 地址以及调用的发生时间。如果启用了 MULTI_REGION_CLOUD_TRAIL_ENABLED,CloudTrail 会将所有 AWS 区域中的日志文件传送到您的 S3 存储桶。此外,当 AWS 启动新区域时,CloudTrail 将在新区域中创建相同的跟踪。因此,您将收到包含新区域的 API 活动的日志文件,而无需执行任何操作。
3.2

利用 AWS CloudTrail 日志文件验证来检查 CloudTrail 日志的完整性。日志文件验证可帮助确定日志文件在 CloudTrail 提交后是否已修改或删除或未更改。此功能是使用行业标准算法构建的:用于哈希的 SHA-256 和用于数字签名的带 RSA 的 SHA-256。这样,要修改、删除或伪造 CloudTrail 日志文件而不被检测到在计算上是不可行的。
3.3 -

通过仅允许授权用户、进程和设备访问 Amazon Simple Storage Service (Amazon S3) 存储桶来管理对 AWS 云中资源的访问。访问管理应与数据的分类一致。
3.3 -

通过仅允许授权用户、进程和设备访问 Amazon Simple Storage Service (Amazon S3) 存储桶来管理对 AWS 云中资源的访问。访问管理应与数据的分类一致。
3.3 -

s3-account-level-public-access-blocks

通过确保 Amazon Simple Storage Service (Amazon S3) 存储桶不可公开访问,在 AWS 云中管理对资源的访问。此规则通过防止公有访问来帮助使敏感数据对未经授权的远程用户安全。此规则允许您选择性地设置 ignorePublicAcls(配置默认值:True)、blockPublicPolicy(配置默认值:True)、blockPublicAcls(配置默认值:True)和 restrictPublicBuckets 参数(配置默认值:True)。实际值应反映您组织的策略。
3.3 -

通过启用 s3_ bucket_policy_grantee_check 管理对 AWS 云的访问。此规则检查 Amazon S3 存储桶授予的访问权限是否受您提供的任何 AWS 委托人、联合身份用户、服务委托人、IP 地址或 Amazon Virtual Private Cloud (Amazon VPC) IDs 的限制。
3.4

cloud-trail-cloud-watch-logs-enabled

使用 Amazon CloudWatch 集中收集和管理日志事件活动。包含 AWS CloudTrail 数据提供了您的 AWS 账户中的 API 调用活动的详细信息。
3.5 config-enabled-all-regions (进程检查) 确保在所有 AWS 区域中启用 AWS Config。在控制台的 AWS Config 部分中,对于启用的每个区域,确保 AWS Config 记录器配置正确。确保至少在一个区域中启用全局 AWS 资源的记录。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
3.6

s3-bucket-logging-enabled

Amazon Simple Storage Service (Amazon S3) 服务器访问日志记录提供了一种监控网络是否存在潜在网络安全事件的方法。通过捕获向 Amazon S3 存储桶发出的请求的详细记录来监控事件。每个访问日志记录都提供有关单个访问请求的详细信息。详细信息包括请求者、存储桶名称、请求时间、请求操作、响应状态和错误代码(如果相关)。
3.7

由于敏感数据可能存在并有助于保护静态数据,因此请确保为您的 AWS CloudTrail 跟踪启用加密。
3.8

启用密钥轮换,以确保在到达加密期限时轮换密钥。
3.9

vpc-flow-logs-enabled

VPC 流日志提供有关传入和传出 Amazon Virtual Private Cloud (Amazon VPC) 中的网络接口的 IP 流量的详细信息。默认情况下,流日志记录包含 IP 流的不同组件的值,包括源、目标和协议。
3.1

cloudtrail-s3-dataevents-enabled

Simple Storage Service (Amazon S3) 数据事件的集合有助于检测任何异常活动。详细信息包括访问 Amazon S3 存储桶的 AWS 账户信息、IP 地址和事件时间。
3.11

cloudtrail-s3-dataevents-enabled

Simple Storage Service (Amazon S3) 数据事件的集合有助于检测任何异常活动。详细信息包括访问 Amazon S3 存储桶的 AWS 账户信息、IP 地址和事件时间。
4.1 alarm-unauthorized-api-calls(进程检查) 确保存在有关未经授权的 API 调用的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.2 alarm-sign-in-without-mfa (进程检查) 确保存在关于 AWS 管理控制台登录的日志指标筛选条件和警报,而无需多重验证 (MFA)。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.3 alarm-root-account-use (进程检查) 确保存在日志指标筛选条件和关于根账户的使用的警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.4 - alarm-iam-policy-change (进程检查) 确保存在关于 IAM 策略更改的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.5 alarm-cloudtrail-config-change (进程检查) 确保存在关于 AWS CloudTrail 配置更改的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.6 alarm-console-auth-failures(进程检查) 确保存在关于 AWS 管理控制台身份验证失败的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.7 - alarm-kms-disable-or-delete-cmk (进程检查) 确保存在关于禁用或计划删除客户创建的 CMKs 的日志指标筛选条件和警报。 有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.8 alarm-s3-bucket-policy-change(进程检查) 确保存在关于 Amazon S3 存储桶策略更改的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.9 alarm-aws-config-change (进程检查) 确保存在关于 AWS Config 配置更改的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.10 alarm-vpc-secrity-group-change (进程检查) 确保存在日志指标筛选条件和安全组更改警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.11 alarm-vpc-nacl-change (进程检查) 确保存在关于网络访问控制列表 (NACL) 更改的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.12 alarm-vpc-network-gateway-change(进程检查) 确保存在日志指标筛选条件和警报,以应对网络网关的更改。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.13 alarm-vpc-route-table-change(进程检查) 确保存在日志指标筛选条件和路由表更改警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.14 alarm-vpc-change (进程检查) 确保存在关于 Amazon Virtual Private Cloud (VPC) 更改的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
4.15 alarm-organizations-change (进程检查) 确保存在关于 AWS Organizations 更改的日志指标筛选条件和警报。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
5.1 vpc-networkacl-open-admin-ports(进程检查) 确保没有网络 ACLs 允许对远程服务器管理端口的公共入口。在控制台的 VPC 部分中,确保有源为“0.0.0.0/0”且允许端口或端口范围(包括远程服务器管理端口)的网络 ACLs。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。
5.2

restricted-common-ports

通过确保限制 Amazon Elastic Compute Cloud (Amazon EC2) 安全组上的常见端口,管理对 AWS 云中资源的访问。不将对端口的访问限制为受信任的源可能会导致对系统的可用性、完整性和机密性的攻击。此规则允许您选择设置 blockedPort1 - blockedPort5 参数(配置默认值:20,21,338,3306,333)。实际值应反映您组织的策略。
5.3

vpc-default-security-group-closed

Amazon Elastic Compute Cloud (Amazon EC2) 安全组可提供对 AWS 资源传入和传出网络流量的有状态筛选,从而帮助管理网络访问。限制默认安全组上的所有流量有助于限制对 AWS 资源的远程访问。
5.4 vpc-networkacl-open-admin-ports(进程检查) 确保 Amazon VPC 对等连接的路由表为“最少访问”。在控制台的 VPC 部分中,检查路由表条目,以确保为实现对等连接目的所需的子网或主机数量最少。有关此控制的审核的更多详细信息,请参阅 CIS Amazon Web Services Foundations 基准 1.3.0 版文档,该文档位于 https://www.cisecurity.org/benchmark/amazon_web_services/。

Template

该模板在 GitHub 上可用:CIS AWS Foundations 基准 1.3 级 2 的 运营最佳实践。