本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Security Hub 控件适用于 CloudFront
这些 Security Hub 控件用于评估亚马逊的 CloudFront 服务和资源。
这些控件可能并非全部可用 Amazon Web Services 区域。有关更多信息,请参阅 按地区划分的控件可用性。
[CloudFront.1] CloudFront 发行版应配置默认根对象
相关要求: NIST.800-53.r5 SC-7(11)、 NIST.800-53.r5 SC-7 (16)、PCI DSS v4.0.1/2.6
类别:保护 > 安全访问管理 > 不可公开访问的资源
严重性:高
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-default-root-object-configured
计划类型:已触发变更
参数:无
此控件检查 Amazon CloudFront 分配是否配置为返回默认根对象的特定对象。如果 CloudFront 发行版未配置默认根对象,则控件将失败。
用户有时可能会请求分配的根目录,URL而不是分配中的对象。发生这种情况时,指定默认根对象可以帮助您避免暴露 Web 分发的内容。
修复
要为 CloudFront 分配配置默认根对象,请参阅 Amazon CloudFront 开发者指南中的如何指定默认根对象。
[CloudFront.3] CloudFront 发行版在传输过程中应要求加密
相关要求: NIST.800-53.r5 AC-17 (2)、、 NIST.800-53.r5 IA-5 (1) NIST.800-53.r5 AC-4、 NIST.800-53.r5 SC-1 2 (3)、3、3、3 ( NIST.800-53.r5 SC-13)、 NIST.800-53.r5 SC-2 (4)、 NIST.800-53.r5 SC-2 (1)、 NIST.800-53.r5 SC-7 (2) NIST.800-53.r5 SC-8、 NIST.800-53.r5 SC-8 NIST .800-53.r5 SI-7 NIST.800-53.r5 SC-8 (6)、v4.0.1/4.2.1 PCI DSS
类别:保护 > 数据保护 > 加密 data-in-transit
严重性:中
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-viewer-policy-https
计划类型:已触发变更
参数:无
此控件可检查 Amazon CloudFront 分配是否要求查看者HTTPS直接使用或是否使用重定向。如果 ViewerProtocolPolicy
对于 defaultCacheBehavior
或 cacheBehaviors
设置为 allow-all
,则控制失败。
HTTPS(TLS) 可用于帮助防止潜在的攻击者使用 person-in-the-middle或类似的攻击来窃听或操纵网络流量。只应允许通过 HTTPS (TLS) 进行加密连接。加密传输中数据可能会影响性能。您应该使用此功能测试您的应用程序,以了解其性能状况和影响TLS。
修复
要对传输中的 CloudFront 分配进行加密,请参阅《亚马逊 CloudFront 开发者指南》 CloudFront中的 “要求HTTPS查看者之间进行通信”。
[CloudFront.4] CloudFront 发行版应配置源站故障转移
相关要求: NIST.800-53.r5 CP-10, NIST.800-53.r5 SC-36、 NIST.800-53.r5 SC-5 (2)、NIST .800-53.r5 SI-13 (5)
类别:恢复 > 弹性 > 高可用性
严重性:低
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-origin-failover-enabled
计划类型:已触发变更
参数:无
此控件会检查 Amazon CloudFront 配送是否配置了具有两个或更多来源的起源组。
CloudFront 源站故障转移可以提高可用性。如果主源不可用或返回特定的HTTP响应状态代码,源故障转移会自动将流量重定向到辅助源。
修复
要为 CloudFront 分配配置源故障转移,请参阅《Amazon CloudFront 开发者指南》中的创建源组。
[CloudFront.5] CloudFront 发行版应启用日志记录
相关要求: NIST.800-53.r5 AC-2(4)、(26)、 NIST.800-53.r5 AC-4 (9)、、 NIST.800-53.r5 AC-6 (9)、.800-53.r5 SI-3 NIST.800-53.r5 SC-7 (8)、NIST .800-53.r5 SI-4 (20)、.8 NIST 00-53.r5 SI-7 (8)、v4.0.1/10.4.2 NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 CA-7 NIST PCI DSS
类别:识别 > 日志记录
严重性:中
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-accesslogs-enabled
计划类型:已触发变更
参数:无
此控件检查 CloudFront 发行版上是否启用了服务器访问日志记录。如果未为分配启用访问日志记录,则控制失败。此控件仅评估是否为发行版启用了标准日志记录(旧版)。
CloudFront 访问日志提供有关 CloudFront 收到的每个用户请求的详细信息。每个日志都包含诸如收到请求的日期和时间、发出请求的查看器的 IP 地址、请求的来源以及查看器请求的端口号等信息。这些日志对于安全和访问审计、取证调查等应用很有用。有关分析访问日志的更多信息,请参阅 Amazon Athena 用户指南中的查询亚马逊 CloudFront 日志。
修复
要为 CloudFront 分配配置标准日志(旧版),请参阅 Amazon CloudFront 开发者指南中的配置标准日志(旧版)。
[CloudFront.6] CloudFront 发行版应该已启用 WAF
相关要求: NIST.800-53.r5 AC-4(21)、PCI DSS v4.0.1/6.4.2
类别:保护 > 防护服务
严重性:中
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-associated-with-waf
计划类型:已触发变更
参数:无
此控件检查 CloudFront 发行版是否与 Amazon WAF Classic 或 Amazon WAF Web 相关联ACLs。如果发行版未与 Web 关联,则控制失败ACL。
Amazon WAF 是一种 Web 应用程序防火墙,可帮助保护 Web 应用程序和APIs免受攻击。它允许您配置一组名为 Web 访问控制列表 (WebACL) 的规则,这些规则根据您定义的可自定义 Web 安全规则和条件允许、阻止或计数 Web 请求。确保您的 CloudFront 发行版与 Amazon WAF Web 关联,ACL以帮助保护其免受恶意攻击。
修复
要将 Amazon WAF 网站ACL与 CloudFront 分配相关联,请参阅《Amazon CloudFront 开发者指南》中的使用 Amazon WAF 来控制对内容的访问权限。
[CloudFront.7] CloudFront 发行版应使用自定义SSL/证书 TLS
相关要求: NIST.800-53.r5 AC-17 (2)、 NIST.800-53.r5 AC-4、 NIST.800-53.r5 IA-5 (1)、 NIST.800-53.r5 SC-1 2 (3)、3、3、 NIST.800-53.r5 SC-1 3 ( NIST.800-53.r5 SC-23)、 NIST.800-53.r5 SC-2 (4)、 NIST.800-53.r5 SC-7 (1)、 NIST.800-53.r5 SC-8 (2) NIST.800-53.r5 SC-8、NIST .800-53.r5 SI-7 NIST.800-53.r5 SC-8 (6)
类别:保护 > 数据保护 > 加密 data-in-transit
严重性:中
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-custom-ssl-certificate
计划类型:已触发变更
参数:无
此控件检查 CloudFront 发行版是否使用默认SSL/TLS certificate CloudFront provides. This control passes if the CloudFront distribution uses a custom SSL/TLS certificate. This control fails if the CloudFront distribution uses the default SSL/TLS证书。
自定义SSL/TLS允许您的用户使用备用域名访问内容。您可以将自定义证书存储在 Amazon Certificate Manager (推荐)或中IAM。
修复
要使用自定义SSL/TLS证书为 CloudFront 分配添加备用域名,请参阅《Amazon CloudFront 开发者指南》中的添加备用域名。
[CloudFront.8] 应使用 CloudFront 发行版SNI来处理请求 HTTPS
相关要求: NIST.800-53.r5 CA-9(1)、NIST .800-53.r5 CM-2
类别:保护 > 安全网络配置
严重性:低
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-sni-enabled
计划类型:已触发变更
参数:无
此控件会检查 Amazon CloudFront 分销是否使用的是专用 IP 地址的自定义SSL/TLS certificate and are configured to use SNI to serve HTTPS requests. This control fails if a custom SSL/TLS certificate is associated but the SSL/TLS支持方法。
服务器名称指示 (SNI) 是 2010 年之后发布的浏览器和客户端所支持的TLS协议的扩展。如果您配置 CloudFront 为使用处理HTTPS请求SNI,请 CloudFront 将您的备用域名与每个边缘站点的 IP 地址相关联。当观看者提交您的内容HTTPS请求时,会将请求DNS路由到正确边缘位置的 IP 地址。您的域名的 IP 地址是在SSL/TLS握手协商期间确定的;IP 地址不专用于您的分发。
修复
要配置用于HTTPS处理请求的 CloudFront 分发,请参阅《 CloudFront 开发人员指南》中的 “使用SNI来HTTPS处理请求(适用于大多数客户端)”。SNI有关自定义SSL证书的信息,请参阅使用SSL/TLS证书的要求 CloudFront。
[CloudFront.9] CloudFront 发行版应加密发往自定义来源的流量
相关要求: NIST.800-53.r5 AC-17 (2)、、 NIST.800-53.r5 IA-5 (1) NIST.800-53.r5 AC-4、 NIST.800-53.r5 SC-1 2 (3)、3、3、3 ( NIST.800-53.r5 SC-13)、 NIST.800-53.r5 SC-2 (4)、 NIST.800-53.r5 SC-2 (1)、 NIST.800-53.r5 SC-7 (2) NIST.800-53.r5 SC-8、 NIST.800-53.r5 SC-8 NIST .800-53.r5 SI-7 NIST.800-53.r5 SC-8 (6)、v4.0.1/4.2.1 PCI DSS
类别:保护 > 数据保护 > 加密 data-in-transit
严重性:中
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-traffic-to-origin-encrypted
计划类型:已触发变更
参数:无
此控件可检查 Amazon CloudFront 分配是否正在加密流向自定义来源的流量。对于源协议策略允许 “仅限 http” 的 CloudFront 分发,此控制失败。如果分配的源协议策略为 “match-viewer”,而查看器协议策略为 “allow-all”,则此控制也会失败。
HTTPS(TLS) 可用于帮助防止窃听或操纵网络流量。只应允许通过 HTTPS (TLS) 进行加密连接。
修复
要更新源协议策略以要求对 CloudFront 连接进行加密,请参阅 Amazon CloudFront 开发者指南中的要求HTTPS CloudFront 与您的自定义源之间的通信。
[CloudFront.10] CloudFront 分发版不应在边缘站点和自定义源站之间使用已弃用的SSL协议
相关要求: NIST.800-53.r5 AC-17 (2)、、 NIST.800-53.r5 IA-5 (1) NIST.800-53.r5 AC-4、 NIST.800-53.r5 SC-1 2 (3)、3、(4)、 NIST.800-53.r5 SC-1 (1)、 NIST.800-53.r5 SC-7 (2) NIST.800-53.r5 SC-8、 NIST.800-53.r5 SC-8 NIST .800-53.r5 SI-7 NIST.800-53.r5 SC-8 (6)、v4.0.1/4.2.1 NIST.800-53.r5 SC-2 PCI DSS
类别:保护 > 数据保护 > 加密 data-in-transit
严重性:中
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-no-deprecated-ssl-protocols
计划类型:已触发变更
参数:无
此控件会检查 Amazon CloudFront 分发是否使用已弃用的SSL协议在 CloudFront 边缘站点和您的自定义源站之间进行HTTPS通信。如果 CloudFront 分配OriginSslProtocols
包含 where includes,则CustomOriginConfig
此控件将失败SSLv3
。
2015 年,互联网工程任务组 (IETF) 正式宣布,由于协议不够安全,应弃用 SSL 3.0。建议您使用 TLSv1 .2 或更高版本与您的自定义源进行HTTPS通信。
修复
要更新 CloudFront 分配的 Origin SSL 协议,请参阅 Amazon CloudFront 开发者指南中的要求HTTPS CloudFront 与您的自定义来源之间的通信。
[CloudFront.12] CloudFront 发行版不应指向不存在的 S3 来源
相关要求:NIST.800-53.r5 CM-2、.800-53.r5 CM-2 (2)、v4.0.1/2.2.6 NIST PCI DSS
类别:识别 > 资源配置
严重性:高
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-s3-origin-non-existent-bucket
计划类型:定期
参数:无
此控件可检查亚马逊 CloudFront 分发是否指向不存在的 Amazon S3 来源。如果源配置为指向不存在的存储桶,则 CloudFront 分配的控制将失败。此控件仅适用于没有静态网站托管的 S3 存储桶是 S3 来源的 CloudFront 分配。
当您账户中的 CloudFront 分配配置为指向不存在的存储桶时,恶意第三方可以创建引用的存储桶,并通过您的分配提供自己的内容。无论路由行为如何,我们都建议您检查所有源,以确保分布指向适当的源。
修复
要修改 CloudFront 分配以指向新的来源,请参阅《Amazon CloudFront 开发者指南》中的更新分配。
[CloudFront.13] CloudFront 发行版应使用源站访问控制
类别:保护 > 安全访问管理 > 资源不公开访问
严重性:中
资源类型:AWS::CloudFront::Distribution
Amazon Config 规则:cloudfront-s3-origin-access-control-enabled
计划类型:已触发变更
参数:无
此控件检查带有 Amazon S3 来源的 Amazon CloudFront 分配是否配置了源站访问控制 (OAC)。如果OAC未针对 CloudFront 分发进行配置,则控件将失败。
使用 S3 存储桶作为 CloudFront 分配的源时,您可以启用OAC。这仅允许通过指定的 CloudFront 分配访问存储桶中的内容,并禁止直接从存储桶或其他分配进行访问。尽管 CloudFront 支持 Origin Access Identity (OAI),但OAC提供了其他功能,使用的发行版OAI可以迁移到OAC。虽然OAI提供了一种安全的方式来访问 S3 源,但它也有一些局限性,例如缺乏对精细策略配置的支持,以及不支持使用需要 Amazon 签名版本 4 (Sigv4) 的POST方法的HTTP/HTTPS请求。 Amazon Web Services 区域 OAI也不支持使用进行加密 Amazon Key Management Service。 OAC基于使用IAM服务主体向 S3 源进行身份验证 Amazon 的最佳实践。
修复
要配置包OAC含 S3 来源的 CloudFront 分配,请参阅《亚马逊 CloudFront 开发者指南》中的限制对 Amazon S3 来源的访问权限。
[CloudFront.14] 应 CloudFront 标记发行版
类别:识别 > 清单 > 标记
严重性:低
资源类型:Amazon::CloudFront::Distribution
Amazon Config 规则:tagged-cloudfront-distribution
(自定义 Security Hub 规则)
计划类型:已触发变更
参数:
参数 | 描述 | Type | 允许的自定义值 | Security Hub 默认值 |
---|---|---|---|---|
requiredTagKeys
|
被评估资源必须包含的非系统标签键列表。标签键区分大小写。 | StringList | 符合 Amazon 要求的标签列表 | 无默认值 |
此控件会检查 Amazon CloudFront 分配是否具有参数中定义的特定密钥的标签requiredTagKeys
。如果分配没有任何标签键或未在参数 requiredTagKeys
中指定所有键,则此控件会失败。如果未提供参数 requiredTagKeys
,则此控件仅会检查是否存在标签键,如果分配未使用任何键进行标记,则此控件会失败。自动应用并以 aws:
为开头的系统标签会被忽略。
标签是您分配给 Amazon 资源的标签,它由密钥和可选值组成。您可以创建标签,以按用途、所有者、环境或其他标准对资源进行分类。标签可帮助您识别、组织、搜索和筛选资源。使用标签进行标记还可以帮助您跟踪负责操作和通知的资源所有者。使用标记时,可以实现基于属性的访问控制 (ABAC) 作为一种授权策略,它根据标签定义权限。您可以为IAM实体(用户或角色)和 Amazon 资源附加标签。您可以为IAM委托人创建单个ABAC策略或一组单独的策略。您可以将这些ABAC策略设计为允许在委托人的标签与资源标签匹配时进行操作。有关更多信息,请参阅有什么ABAC用 Amazon? 在《IAM用户指南》中。
注意
不要在标签中添加个人身份信息 (PII) 或其他机密或敏感信息。许多人都可以访问标签 Amazon Web Services 服务,包括 Amazon Billing。有关更多标记最佳做法,请参阅中的为Amazon 资源添加标签。Amazon Web Services 一般参考
修复
要为 CloudFront 分配添加标签,请参阅《亚马逊 CloudFront 开发者指南》中的 “为亚马逊 CloudFront 分配添加标签”。