适用于 Auto Scaling 的 Security Hub 控件
这些 Security Hub 控件用于评估 Amazon EC2 Auto Scaling 服务和资源。
这些控件可能并未在所有的 Amazon Web Services 区域 上提供。有关更多信息,请参阅 按地区划分的控件可用性。
[AutoScaling.1] 与负载均衡器关联的自动扩缩组应使用 ELB 运行状况检查
相关要求:PCI DSS v3.2.1/2.2、NIST.800-53.r5 CA-7、NIST.800-53.r5 CP-2(2)、NIST.800-53.r5 SI-2。
类别:识别 > 清单
严重性:低
资源类型:AWS::AutoScaling::AutoScalingGroup
Amazon Config 规则: autoscaling-group-elb-healthcheck-required
计划类型:已触发变更
参数:无
此控件用于检查与负载均衡器关联的 Amazon EC2 Auto Scaling 组是否使用弹性负载均衡(ELB)运行状况检查。如果自动扩缩组未使用 ELB 运行状况检查,则控件会失败。
ELB 运行状况检查可确保自动扩缩组可以根据负载均衡器提供的其他测试确定实例的运行状况。使用弹性负载均衡运行状况检查还有助于支持使用 EC2 自动扩缩组的应用程序的可用性。
修复
要添加弹性负载均衡运行状况检查,请参阅 Amazon EC2 Auto Scaling 用户指南中的添加弹性负载均衡运行状况检查。
[AutoScaling.2] Amazon EC2 Auto Scaling 组应覆盖多个可用区
相关要求:NIST.800-53.r5 CP-10、NIST.800-53.r5 CP-2(2)、NIST.800-53.r5 CP-6(2)、NIST.800-53.r5 SC-36、NIST.800-53.r5 SC-5(2)、NIST.800-53.r5 SI-13(5)。
类别:恢复 > 弹性 > 高可用性
严重性:中
资源类型:AWS::AutoScaling::AutoScalingGroup
Amazon Config 规则: autoscaling-multiple-az
计划类型:已触发变更
参数:
| 参数 | 描述 | 类型 | 允许的自定义值 | Security Hub 默认值 |
|---|---|---|---|---|
|
|
可用区的最小数量 |
枚举 |
|
|
该控件检查 Amazon EC2 Auto Scaling 组是否至少跨越指定数量的可用区(AZ)。如果自动扩缩组未跨越至少指定数量的可用区,则控制失败。除非您为可用区的最小数量提供自定义参数值,否则 Security Hub 将使用默认值即两个可用区。
如果配置的单个可用区不可用,不跨多个可用区的自动扩缩组无法在另一个可用区中启动实例来进行补偿。但在某些使用案例中,例如批处理作业,或需要将可用区间传输成本保持在最低时,首选具有单个可用区的自动扩缩组。在这种情况下,您可以禁用此控件或隐藏其调查发现。
修复
要向现有自动扩缩组添加可用区,请参阅《Amazon EC2 Auto Scaling 用户指南》中的添加和删除可用区。
[AutoScaling.3] 自动扩缩组启动配置应将 EC2 实例配置为需要实例元数据服务版本 2 (IMDSv2)
相关要求:NIST.800-53.r5 AC-3、NIST.800-53.r5 AC-3(15)、NIST.800-53.r5 AC-3(7)、NIST.800-53.r5 AC-6、NIST.800-53.r5 CA-9(1)、NIST.800-53.r5 CM-2、PCI DSS v4.0.1/2.2.6
类别:保护 > 安全网络配置
严重性:高
资源类型:AWS::AutoScaling::LaunchConfiguration
Amazon Config 规则: autoscaling-launchconfig-requires-imdsv2
计划类型:已触发变更
参数:无
此控件检查是否在 Amazon EC2 Auto Scaling 启动的所有实例上启用了 IMDSv2。如果启动配置中未包含实例元数据服务(IMDS)版本,或者将其配置为 token optional(允许 IMDSv1 或 IMDSv2 的设置),则控件会失败。
IMDS 提供有关实例的数据,您可以使用这些数据来配置或管理正在运行的实例。
IMDS 第 2 版添加了 IMDSv1 中没有的新保护措施,以进一步保护 EC2 实例。
修复
自动扩缩组一次与一个启动配置关联。在创建启动配置后,您将无法对其进行修改。要更改自动扩缩组的启动配置,请使用现有启动配置作为启用 IMDSv2 的新启动配置的基础。有关更多信息,请参阅《Amazon EC2 用户指南》中的为新实例配置实例元数据选项。
[AutoScaling.4] 自动扩缩组启动配置的元数据响应跳跃限制不应大于 1
重要
Security Hub 已于 2024 年 4 月停用了此控件。有关更多信息,请参阅 Security Hub CSPM 控件的更改日志。
相关要求:NIST.800-53.r5 CA-9(1)、NIST.800-53.r5 CM-2、NIST.800-53.r5 CM-2(2)。
类别:保护 > 安全网络配置
严重性:高
资源类型:AWS::AutoScaling::LaunchConfiguration
Amazon Config 规则: autoscaling-launch-config-hop-limit
计划类型:已触发变更
参数:无
此控件检查元数据令牌可以传输的网络跃点数。如果元数据响应跳数限制大于 1,则控制失败。
实例元数据服务(IMDS)提供有关 Amazon EC2 实例的元数据信息,对于应用程序配置非常有用。将元数据服务的 HTTP PUT 响应限制为 EC2 实例,可保护 IMDS 免遭未经授权的使用。
IP 数据包中的生存时间 (TTL) 字段每个跳点上减少一个。这种减少可用于确保数据包不会在 EC2 之外传输。IMDSv2 保护可能被错误配置为开放路由器、第 3 层防火墙、VPN、隧道或 NAT 设备的 EC2 实例,从而防止未经授权的用户检索元数据。在 IMDSv2 中,由于默认的元数据响应跃点限制设置为 1,因此包含密钥令牌的 PUT 响应无法传送到实例之外。但是,如果该值大于 1,则令牌可以离开 EC2 实例。
修复
要修改现有启动配置的元数据响应跃点限制,请参阅《Amazon EC2 用户指南》中的修改现有实例的实例元数据选项。
[Autoscaling.5] 使用自动扩缩组启动配置启动的 Amazon EC2 实例不应具有公有 IP 地址
相关要求:NIST.800-53.r5 AC-21、NIST.800-53.r5 AC-3、NIST.800-53.r5 AC-3(7)、NIST.800-53.r5 AC-4、NIST.800-53.r5 AC-4(21)、NIST.800-53.r5 AC-6、NIST.800-53.r5 SC-7、NIST.800-53.r5 SC-7(11)、NIST.800-53.r5 SC-7(16)、NIST.800-53.r5 SC-7(20)、NIST.800-53.r5 SC-7(21)、NIST.800-53.r5 SC-7(3)、NIST.800-53.r5 SC-7(4)、NIST.800-53.r5 SC-7(9)、PCI DSS v4.0.1/1.4.4
类别:保护 > 安全网络配置 > 不公开访问的资源
严重性:高
资源类型:AWS::AutoScaling::LaunchConfiguration
Amazon Config 规则: autoscaling-launch-config-public-ip-disabled
计划类型:已触发变更
参数:无
此控件检查自动扩缩组的关联启动配置是否为该组的实例分配了公有 IP 地址。如果关联的启动配置分配了公有 IP 地址,则控制失败。
自动扩缩组启动配置中的 Amazon EC2 实例不应具有关联的公有 IP 地址,有限的边缘情况除外。Amazon EC2 实例只能从负载均衡器后面访问,而不能直接暴露在 Internet 上。
修复
自动扩缩组一次与一个启动配置关联。在创建启动配置后,您将无法对其进行修改。要更改 Auto Scaling 组的启动配置,请将现有的启动配置作为新启动配置的基础。然后,更新 Auto Scaling 组以使用新的启动配置。有关分步说明,请参阅 Amazon EC2 Auto Scaling 用户指南中的更改自动扩缩组的启动配置。创建新的启动配置时,在其他配置下,在高级详细信息、IP 地址类型下,选择不要为任何实例分配公有 IP 地址。
变更启动配置后,自动扩缩会使用新的配置选项启动新实例。现有实例不受影响。要更新现有实例,我们建议您刷新实例,或者根据终止策略启用自动扩缩,以逐步使用较新实例替换较旧实例。有关更新自动扩缩实例的更多信息,请参阅 Amazon EC2 Auto Scaling 用户指南中的更新自动扩缩实例。
[AutoScaling.6] 自动扩缩组应在多个可用区域中使用多种实例类型
相关要求:NIST.800-53.r5 CP-10、NIST.800-53.r5 CP-2(2)、NIST.800-53.r5 CP-6(2)、NIST.800-53.r5 SC-36、NIST.800-53.r5 SC-5(2)、NIST.800-53.r5 SI-13(5)。
类别:恢复 > 弹性 > 高可用性
严重性:中
资源类型:AWS::AutoScaling::AutoScalingGroup
Amazon Config 规则: autoscaling-multiple-instance-types
计划类型:已触发变更
参数:无
此控件检查 Amazon EC2 Auto Scaling 组是否使用多种实例类型。如果自动扩缩组仅定义了一个实例类型,则控制失败。
您可以跨多个可用区中运行的多个实例类型部署应用程序以提高可用性。Security Hub 建议使用多种实例类型,以便自动扩缩组在您选择的可用区中实例容量不足时可以启动另一种实例类型。
修复
要创建具有多个实例类型的自动扩缩组,请参阅 Amazon EC2 Auto Scaling 用户指南中的具有多个实例类型和购买选项的自动扩缩组。
[AutoScaling.9] Amazon EC2 Auto Scaling 组应使用 Amazon EC2 启动模板
相关要求:NIST.800-53.r5 CA-9(1)、NIST.800-53.r5 CM-2、NIST.800-53.r5 CM-2(2)。
类别:识别 > 资源配置
严重性:中
资源类型:AWS::AutoScaling::AutoScalingGroup
Amazon Config 规则: autoscaling-launch-template
计划类型:已触发变更
参数:无
此控件检查 Amazon EC2 Auto Scaling 组是否是基于 EC2 启动模板创建的。如果未使用启动模板创建 Amazon EC2 Auto Scaling 组,或者混合实例策略中未指定启动模板,则此控制失败。
可以从 EC2 启动模板或启动配置创建 EC2 自动扩缩组。但是,使用启动模板创建自动扩缩组可确保您能够访问最新功能和改进。
修复
要使用 EC2 启动模板创建自动扩缩组,请参阅 Amazon EC2 Auto Scaling 用户指南 中的使用启动模板创建自动扩缩组。有关如何将启动配置替换为启动模板的信息,请参阅《Amazon EC2 用户指南》中的将启动配置替换为启动模板。
[AutoScaling.10] 应标记 EC2 自动扩缩组
类别:识别 > 清单 > 标记
严重性:低
资源类型:AWS::AutoScaling::AutoScalingGroup
Amazon Config规则:tagged-autoscaling-autoscalinggroup(自定义 Security Hub 规则)
计划类型:已触发变更
参数:
| 参数 | 描述 | 类型 | 允许的自定义值 | Security Hub 默认值 |
|---|---|---|---|---|
requiredTagKeys
|
被评估资源必须包含的非系统标签键列表。标签键区分大小写。 | StringList(最多 6 项) | 1-6 个符合 Amazon 要求的标签键。 | 无默认值 |
此控件用于检查 Amazon EC2 Auto Scaling 是否具有带参数 requiredTagKeys 中定义的特定键的标签。如果自动扩缩组没有任何标签键或未在参数 requiredTagKeys 中指定所有键,则此控件会失败。如果未提供参数 requiredTagKeys,则此控件仅会检查是否存在标签键,如果自动扩缩组未使用任何键进行标记,则此控件会失败。自动应用并以 aws: 为开头的系统标签会被忽略。
标签是您分配给 Amazon 资源的标记,由一个键和一个可选值组成。您可以创建标签,以按用途、所有者、环境或其他标准对资源进行分类。标签可帮助您识别、组织、搜索和筛选资源。使用标签进行标记还可以帮助您跟踪负责操作和通知的资源所有者。使用标签进行标记时,可以将基于属性的访问权限控制(ABAC)作为授权策略实施,该策略根据标签来定义权限。您可以将标签附加到 IAM 实体(用户或角色)以及 Amazon 资源。您可以为 IAM 主体创建单个 ABAC 策略或者一组单独的策略。您可以将这些 ABAC 策略设计为允许在主体的标签与资源标签匹配时进行操作。有关更多信息,请参阅 IAM 用户指南中的什么是适用于 Amazon 的 ABAC?。
注意
请勿在标签中添加个人身份信息(PII)或者其他机密或敏感信息。可从许多 Amazon Web Services 服务访问标签,包括 Amazon Billing。有关标记更多最佳实践,请参阅《Amazon Web Services 一般参考》中的标记 Amazon 资源。
修复
要向自动扩缩组添加标签,请参阅《Amazon EC2 Auto Scaling User Guide》中的 Tag Auto Scaling groups and instances。