检测性控制

Last reviewed 2023-12-20 UTC

Security Command Center 的内置安全控制和可用于检测和响应安全事件的自定义解决方案相结合,提供了威胁检测和监控功能。

用于安全和审核用途的中心化日志

此蓝图配置日志记录功能,以使用聚合到单个项目的日志来跟踪和分析 Google Cloud 资源的更改。

下图展示了该蓝图如何将多个项目中多个来源的日志聚合到集中式日志接收器中。

example.com 的日志记录结构。

图中描述了以下内容:

  • 日志接收器在组织节点配置为聚合来自资源层次结构中所有项目的日志。
  • 多个日志接收器配置为将与过滤条件匹配的日志发送到不同的目标位置以进行存储和分析。
  • prj-c-logging 项目包含用于日志存储和分析的所有资源。
  • (可选)您可以配置其他工具以将日志导出到 SIEM。

此蓝图使用不同的日志源,并在日志接收器过滤条件中包含这些日志,以便可以将日志导出到中心目标位置。下表介绍了日志源。

日志源

说明

管理员活动审核日志

您不能配置、停用或排除管理员活动审核日志。

系统事件审核日志

您不能配置、停用或排除系统事件审核日志。

政策拒绝审核日志

您不能配置或停用政策拒绝审核日志,但可以选择使用排除项过滤器来排除这些日志。

数据访问审核日志

默认情况下,蓝图不会启用数据访问日志,因为这些日志的数量和费用可能较高。

如需确定是否应启用数据访问日志,请评估工作负载处理敏感数据的位置,并考虑是否需要为处理敏感数据的每个服务和环境启用数据访问日志。

VPC 流日志

此蓝图将为每个子网启用 VPC 流日志。此蓝图将日志采样配置为对 50% 的日志进行采样,以降低费用。

如果您创建其他子网,则必须确保为每个子网启用 VPC 流日志。

防火墙规则日志记录

此蓝图为每条防火墙政策规则启用防火墙规则日志记录。

如果您为工作负载创建其他防火墙政策规则,则必须确保为每个新规则启用防火墙规则日志记录。

Cloud DNS 日志记录

此蓝图为托管区域启用 Cloud DNS 日志。

如果您创建了其他托管区域,则必须启用这些 DNS 日志。

Google Workspace 审核日志记录

需要执行一次性启用步骤,此步骤无法由蓝图自动执行。如需了解详情,请参阅与 Google Cloud 服务������数据

Access Transparency 日志

需要执行一次性启用步骤,此步骤无法由蓝图自动执行。有关详情,请参阅启用 Access Transparency

下表介绍了日志接收器,以及它们如何在蓝图中与受支持的目标位置搭配使用。

接收器

目标位置

Purpose

sk-c-logging-la

日志路由到 Cloud Logging 存储桶(启用了 Log Analytics 和关联 BigQuery 数据集)

主动分析日志。在控制台中使用 Logs Explorer 运行临时调查,或使用关联的 BigQuery 数据集编写 SQL 查询、报告和视图。

sk-c-logging-bkt

日志路由到 Cloud Storage

长期存储日志,以用于法规遵从、审核和突发事件跟踪。

(可选)如果您有强制执行数据保留的合规性要求,我们建议您额外配置存储桶锁定

sk-c-logging-pub

日志路由到 Pub/Sub

将日志导出到外部平台,例如现有 SIEM。

这需要完成额外的工作才能与 SIEM 集成,例如以下机制:

如需了解如何启用其他日志类型以及编写日志接收器过滤条件,请参阅日志范围限定工具

使用 Security Command Center 进行威胁监控

我们建议您为组织激活 Security Command Center 高级方案,以自动检测 Google Cloud 资源中的威胁、漏洞和配置错误。Security Command Center 会从多个来源创建安全性发现结果,包括:

如需详细了解 Security Command Center 解决的漏洞和威胁,请参阅 Security Command Center 来源

部署蓝图后,您必须激活 Security Command Center。如需查看相关说明,请参阅为组织激活 Security Command Center

激活 Security Command Center 后,我们建议您将 Security Command Center 生成的发现结果导出到现有工具或流程,以对威胁进行分类和响应。此蓝图创建 prj-c-scc 项目,其中包含要用于此集成的 Pub/Sub 主题。根据现有工具,使用以下任一方法导出发现结果:

基于日志的指标和性能指标提醒

当您开始在基础上部署工作负载时,我们建议您使用 Cloud Monitoring 来衡量性能指标。

此蓝图会为每个环境创建一个监控项目,例如 prj-p-monitoring。此项目配置为范围限定项目,以跨多个项目收集聚合性能指标。此蓝图会部署一个包含基于日志的指标提醒政策的示例,以便在应用于 Cloud Storage 存储桶的 IAM 政策发生任何更改时生成电子邮件通知。这有助于监控敏感资源(例如 prj-b-seed 项目中包含 Terraform 状态的存储桶)上的可疑活动。

通常,您还可以使用 Cloud Monitoring 来衡量工作负载应用的性能指标和运行状况。根据您组织中支持和监控应用的运营职责,您可以为不同团队创建更精细的监控项目。使用这些监控项目可查看性能指标、创建应用运行状况信息中心,并在未达到预期的 SLO 时触发提醒。

下图简要展示了 Cloud Monitoring 如何聚合性能指标。

性能监控。

如需了解如何有效地监控工作负载以确保可靠性和可用性,请参阅 Google 的《站点可靠性工程》一书,重点阅读介绍监控分布式系统的章节。

用于自动日志分析的自定义解决方案

您可能需要根据日志为基于自定义查询的安全性事件创建提醒。自定义查询可通过分析 Google Cloud 上的日志并仅导出值得调查的事件,帮助补充 SIEM 的功能,尤其是当您无法将所有云日志导出到 SIEM 时。

此蓝图通过设置可使用关联的 BigQuery 数据集查询的集中式日志来源,帮助启用此日志分析。如需自动执行此功能,您必须实现 bq-log-alerting 中的代码示例,并扩展基础功能。通过示例代码,您可以定期查询日志源并将自定义发现结果发送到 Security Command Center。

下图展示了自动日志分析的简要流程。

自动日志记录分析。

下图展示了自动日志分析的以下概念:

  • 来自不同来源的日志会聚合到一个集中式日志存储桶中,其中包含日志分析和关联的 BigQuery 数据集。
  • BigQuery 视图配置为查询要监控的安全性事件的日志。
  • Cloud Scheduler 每 15 分钟将事件推送到 Pub/Sub 主题一次并触发 Cloud Functions 函数。
  • Cloud Functions 函数会在视图中查询新事件。如果发现事件,则会将其作为自定义发现结果推送到 Security Command Center。
  • Security Command Center 会将关于新发现结果的通知发布到另一个 Pub/Sub 主题。
  • SIEM 等外部工具会订阅 Pub/Sub 主题,以注入新的发现结果。

该示例有多个可查询潜在可疑行为的使用场景。例如,通过您指定的一系列超级用户或其他具有高度特权的账号登录、更改日志记录设置,或者更改网络路由。您可以通过针对要求编写新的查询视图来扩展使用场景。自行编写查询或参考安全日志分析以获取可帮助您分析 Google Cloud 日志的 SQL 查询库。

用于响应资产变化的自定义解决方案

如需实时响应事件,我们建议您使用 Cloud Asset Inventory 来监控资产更改。在这个自定义解决方案中,资产 Feed 配置为实时触发向 Pub/Sub 发送关于资源更改的通知,然后 Cloud Functions 运行自定义代码,以根据是否应允许更改来强制执行您自己的业务逻辑。

此蓝图具有一个自定义治理解决方案示例,该解决方案监控有关添加高度敏感角色(包括 Organization Admin、Owner 和 Editor)的 IAM 更改。下图描述了此解决方案。

自动还原 IAM 政策更改并发送通知。

上图展示了以下概念:

  • 对允许政策进行更改。
  • Cloud Asset Inventory Feed 会向 Pub/Sub 发送有关允许政策更改的实时通知。
  • Pub/Sub 会触发函数。
  • Cloud Functions 函数运行自定义代码来强制执行您的政策。示例函数具有评估更改是否已将 Organization Admin、Owner 或 Editor 角色添加到允许政策的逻辑。如果是这样,该函数会创建自定义安全发现结果并将其发送到 Security Command Center。
  • (可选)您可以使用此模型自动进行补救工作。在 Cloud Functions 函数中编写其他业务逻辑,以自动对发现结果执行操作,例如将允许政策还原为其之前的状态。

此外,您还可以扩展此示例解决方案使用的基础设施和逻辑,以向对您的业务至关重要的其他事件添加自定义响应。

后续步骤