适用于 Amazon MSK 的 Security Hub - Amazon Security Hub
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

适用于 Amazon MSK 的 Security Hub

这些 Amazon Security Hub CSPM 控件可评估 Amazon Managed Streaming for Apache Kafka(Amazon MSK)服务和资源。这些控件可能并非在所有 Amazon Web Services 区域都可用。有关更多信息,请参阅 按地区划分的控件可用性

[MSK.1] MSK 集群应在代理节点之间传输时进行加密

相关要求: NIST.800-53.r5 AC-4、NIST.800-53.r5 SC-13、NIST.800-53.r5 SC-23、NIST.800-53.r5 SC-23(3)、NIST.800-53.r5 SC-7(4)、NIST.800-53.r5 SC-8、NIST.800-53.r5 SC-8(1)、NIST.800-53.r5 SC-8(2)、PCI DSS v4.0.1/4.2.1

类别:保护 > 数据保护 > 传输中数据加密

严重性:

资源类型:AWS::MSK::Cluster

Amazon Config 规则: msk-in-cluster-node-require-tls

计划类型:已触发变更

参数:

此控件可检查 Amazon MSK 集群在传输过程中是否在集群的代理节点之间使用 HTTPS (TLS) 进行加密。如果为集群代理节点连接启用了纯文本通信,则控制失败。

HTTPS 使用 TLS 来移动数据,因此提供了额外的安全层,可用于帮助防止潜在攻击者使用中间人攻击或类似攻击来侦听或操纵网络流量。默认情况下,Amazon MSK 使用 TLS 对传输中数据进行加密。但是,您可以在创建集群时覆盖此默认值。对于代理节点连接,我们建议使用通过 HTTPS (TLS) 的加密连接。

修复

有关更新 Amazon MSK 集群的加密设置的信息,请参阅《Amazon Managed Streaming for Apache Kafka 开发人员指南》中的 Updating security settings of a cluster

[MSK.2] MSK 集群应配置增强型监控

相关要求:NIST.800-53.r5 CA-7、NIST.800-53.r5 SI-2。

类别:检测 > 检测服务

严重性:

资源类型:AWS::MSK::Cluster

Amazon Config 规则: msk-enhanced-monitoring-enabled

计划类型:已触发变更

参数:

此控件检查 Amazon MSK 集群是否配置了增强型监控,且监控级别至少指定为 PER_TOPIC_PER_BROKER。如果集群的监控级别设置为 DEFAULTPER_BROKER,则控制失败。

PER_TOPIC_PER_BROKER 监控级别可以帮助您更精细地了解 MSK 集群的性能,还提供与资源利用率相关的指标,例如 CPU 和内存使用情况。这可以帮助您确定各个主题和代理的性能瓶颈和资源利用率模式。反过来,这种可见性可以优化 Kafka 代理的性能。

修复

要为 MSK 集群配置增强型监控,请完成以下步骤:

  1. 打开 Amazon MSK 控制台,网址为:https://console.aws.amazon.com/msk/home?region=us-east-1#/home/

  2. 在导航窗格中,选择集群。然后选择一个集群。

  3. 操作中,选择编辑监控

  4. 选择增强主题级别监控选项。

  5. 选择保存更改

有关监控级别的更多信息,请参阅《Amazon Managed Streaming for Apache Kafka 开发人员指南》中的 Amazon MSK metrics for monitoring Standard brokers with CloudWatch

[MSK.3] MSK Connect 连接器应在传输过程中进行加密

相关要求: PCI DSS v4.0.1/4.2.1

类别:保护 > 数据保护 > 传输中数据加密

严重性:

资源类型:AWS::KafkaConnect::Connector

Amazon Config规则:msk-connect-connector-encrypted(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

此控件可检查 Amazon MSK Connect 连接器是否在传输过程中进行加密。如果连接器未在传输过程中进行加密,则此控件将失败。

传输中数据是指从一个位置移动到另一个位置的数据,例如在集群中的节点之间或在集群和应用程序之间。数据可能通过互联网或在私有网络内移动。对传输中数据进行加密可降低未经授权的用户侦听网络流量的风险。

修复

您可以在创建 MSK Connect 连接器时启用传输中加密。创建集群后,将无法更改加密设置。有关更多信息,请参阅《Amazon Managed Streaming for Apache Kafka Developer Guide》中的 Create a connector

[MSK.4] MSK 集群应禁用公开访问

类别:保护 > 安全访问管理 > 资源不公开访问

严重性:严重

资源类型:AWS::MSK::Cluster

Amazon Config 规则: msk-cluster-public-access-disabled

计划类型:已触发变更

参数:

此控件检查 Amazon MSK 集群是否已禁用公开访问。如果 MSK 集群启用了公开访问,则该控件会失败。

默认情况下,只有当客户端与 Amazon MSK 集群位于同一 VPC 中时,客户端才能访问该集群。默认情况下,Kafka 客户端与 MSK 集群之间的所有通信都是私密的,流数据不会通过互联网传输。但是,如果将 MSK 集群配置为允许公开访问,则互联网上的任何人都可以与集群内运行的 Apache Kafka 代理建立连接。这可能会导致未经授权访问、数据泄露或漏洞利用等问题。如果通过要求身份验证和授权措施来限制对集群的访问,您可以帮助保护敏感信息并维护资源的完整性。

修复

有关管理对 Amazon MSK 集群的公开访问的信息,请参阅《Amazon Managed Streaming for Apache Kafka 开发人员指南》中的 Turn on public access to an MSK Provisioned cluster

[MSK.5] MSK 连接器应启用日志记录

类别:识别 > 日志记录

严重性:

资源类型:AWS::KafkaConnect::Connector

Amazon Config 规则: msk-connect-connector-logging-enabled

计划类型:已触发变更

参数:

此控件检查是否为 Amazon MSK 连接器启用了日志记录。如果 MSK 连接器禁用了日志记录,则该控件会失败。

Amazon MSK 连接器通过不断地将流数据从数据来源复制到 Apache Kafka 集群,或不断地将数据从集群复制到数据接收器,将外部系统和 Amazon 服务与 Apache Kafka 集成。MSK Connect 可以写入日志事件,这有助于调试连接器。创建连接器时,您可以指定以下零个或多个日志目标:Amazon CloudWatch Logs、Amazon S3 和 Amazon Data Firehose。

注意

如果插件未将敏感配置值定义为秘密,则这些值可能会出现在连接器日志中。Kafka Connect 对未定义的配置值的处理方式与任何其他明文值相同。

修复

要为现有 Amazon MSK 连接器启用日志记录,您必须使用适当的日志记录配置重新创建连接器。有关配置选项的信息,请参阅《Amazon Managed Streaming for Apache Kafka 开发人员指南》中的 Logging for MSK Connect

[MSK.6] MSK 集群应禁用未经身份验证的访问

类别:保护 > 安全访问管理 > 无密码身份验证

严重性:

资源类型:AWS::MSK::Cluster

Amazon Config 规则: msk-unrestricted-access-check

计划类型:已触发变更

参数:

此控件检查 Amazon MSK 集群是否启用了未经身份验证的访问。如果 MSK 集群启用了未经身份验证的访问,则该控件会失败。

Amazon MSK 支持客户端身份验证和授权机制,可控制对集群的访问。这些机制验证连接到集群的客户端的身份,并确定客户端可以执行哪些操作。可以将 MSK 集群配置为允许未经身份验证的访问,这样任何具有网络连接的客户端无需提供凭证都可以发布和订阅 Kafka 主题。运行 MSK 集群而不要求身份验证违反了最低权限原则,并且可能使集群暴露于未经授权的访问。它允许任何客户端访问、修改或删除 Kafka 主题中的数据,这可能会导致数据泄露、未经授权的数据修改或服务中断。我们建议启用 IAM 身份验证、SASL/SCRAM 或双向 TLS 等身份验证机制,以确保适当的访问控制并保持安全合规性。

修复

有关更改 Amazon MSK 集群的身份验证设置的信息,请参阅《Amazon Managed Streaming for Apache Kafka 开发人员指南》的以下部分:Update security settings of an Amazon MSK clusterAuthentication and authorization for Apache Kafka APIs