检查点
Create a Mute Rule
/ 25
Create a Network
/ 25
Update the Firewall Rules
/ 50
Security Command Center 使用入门
GSP1124
概览
Security Command Center (SCC) 是一个安全监控平台,可帮助用户实现以下目的:
- 发现 Google Cloud 资源与安全性相关的错误配置。
- 报告 Google Cloud 环境中的活跃威胁。
- 修复各 Google Cloud 资产中的漏洞。
在本实验中,您将探索 Security Command Center 的界面、配置和漏洞发现结果,以初步了解该服务。
您将执行的操作
在本实验中,您将学习如何完成以下操作:
- 探索 SCC 界面元素。
- 在项目级别配置 SCC 设置。
- 分析 SCC 中的漏洞发现结果并修复漏洞。
前提条件
建议学员在满足以下条件后再开始此实验:
- 基本理解云计算概念。
- 熟悉 Google Cloud 控制台。
- 建议熟悉发现结果的严重性分类,但并不强制要求。
设置和要求
点击“开始实验”按钮前的注意事项
请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。
此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。我们会为您提供新的临时凭据,让您可以在实验规定的时间内用来登录和访问 Google Cloud。
为完成此实验,您需要:
- 能够使用标准的互联网浏览器(建议使用 Chrome 浏览器)。
- 完成实验的时间 - 请注意,实验开始后无法暂停。
如何开始实验并登录 Google Cloud 控制台
-
点击开始实验按钮。如果该实验需要付费,系统会打开一个弹出式窗口供您选择付款方式。左侧是实验详细信息面板,其中包含以下各项:
- 打开 Google Cloud 控制台按钮
- 剩余时间
- 进行该实验时必须使用的临时凭据
- 帮助您逐步完成本实验所需的其他信息(如果需要)
-
点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。
该实验会启动资源并打开另一个标签页,显示登录页面。
提示:请将这些标签页安排在不同的窗口中,并将它们并排显示。
注意:如果您看见选择账号对话框,请点击使用其他账号。 -
如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。
{{{user_0.username | "<用户名>"}}} 您也可以在实验详细信息面板中找到用户名。
-
点击下一步。
-
复制下面的密码,然后将其粘贴到欢迎对话框中。
{{{user_0.password | "<密码>"}}} 您也可以在实验详细信息面板中找到密码。
-
点击下一步。
重要提示:您必须使用实验提供的凭据。请勿使用您的 Google Cloud 账号凭据。 注意:在本次实验中使用您自己的 Google Cloud 账号可能会产生额外费用。 -
继续在后续页面中点击以完成相应操作:
- 接受条款及条件。
- 由于该账号为临时账号,请勿添加账号恢复选项或双重验证。
- 请勿注册免费试用。
片刻之后,系统会在此标签页中打开 Google Cloud 控制台。
激活 Cloud Shell
Cloud Shell 是一种装有开发者工具的虚拟机。它提供了一个永久性的 5GB 主目录,并且在 Google Cloud 上运行。Cloud Shell 提供可用于访问您的 Google Cloud 资源的命令行工具。
- 点击 Google Cloud 控制台顶部的激活 Cloud Shell 。
如果您连接成功,即表示您已通过身份验证,且当前项目会被设为您的 PROJECT_ID 环境变量所指的项目。输出内容中有一行说明了此会话的 PROJECT_ID:
gcloud
是 Google Cloud 的命令行工具。它已预先安装在 Cloud Shell 上,且支持 Tab 自动补全功能。
- (可选)您可以通过此命令列出活跃账号名称:
-
点击授权。
-
现在,输出的内容应如下所示:
输出:
- (可选)您可以通过此命令列出项目 ID:
输出:
输出示例:
gcloud
, in Google Cloud, refer to the gcloud CLI overview guide.
场景
Cymbal Bank 是一家美国零售银行,拥有 2,000 多个分支机构,遍布美国的 50 个州。它提供综合性借贷服务,这些服务在一个稳健的付款平台上运营。Cymbal Bank 是一家正在经历数字化转型的传统金融服务机构。
Cymbal Bank 成立于 1920 年,原名为 Troxler。Cymbal Group 在对该公司大力投资了自有的 ATM 后,于 1975 年收购了该公司。随着该银行发展成为美国的领先银行,他们制定了以实现客户体验现代化为重心的战略,此类体验既包括在分支机构中的线下体验,也包括使用他们于 2014 年发布的应用时的数字体验。Cymbal Bank 在全美有 42,000 名员工。据报道,其 2019 年的收入为 240 亿美元。
Cymbal Bank 有意集成一个集中式安全监控平台,帮助监控公司银行应用中的各种 Google Cloud 资源面临的威胁并修复漏洞。作为一名云安全工程师,您需要了解 Security Command Center 的领先功能,以便制作演示文稿来向首席技术官介绍该服务的优势。
任务 1. 探索 SCC 界面元素
在此任务中,您将探索 Security Command Center (SCC) 界面并了解该服务的主要功能。
- 打开导航菜单并选择安全 > Security Command Center > 风险概览。
- 向下滚动,分别查看“新威胁数随时间的变化情况”和“漏洞数(按资源类型)”信息面板。
- 威胁信息让 Google Cloud 用户可以知道其 Google Cloud 环境中当前发生的可疑活动,例如服务账号调查自身的权限。
- 漏洞信息与资源的错误配置或漏洞相关,例如 TCP 端口打开或虚拟机上运行的库已过时。
威胁和漏洞是两种不同类型的发现结果。SCC 使用这些发现结果对环境中的安全问题进行分类和报告。请查看此文档详细了解发现结果类别。
“发现结果”是 SCC 生成的记录,可在 Security Command Center 信息中心提供关于漏洞或威胁数据的详细信息。
- 在“新威胁数随时间的变化情况”卡片上,选择发现结果(按资源类型)标签页。
此卡片上枚举一段时间内(这段时间由信息面板右侧的“时间范围”下拉菜单决定)项目中发生且目前仍处于活跃状态的威胁。
默认情况下,“时间范围”下拉菜单会显示过去 7 天中出现的所有威胁,但您可以查看过去 180 内发生的所有威胁。
-
向下滚动至漏洞数(按资源类型)卡片。
-
从时间范围选择器中,选择过去 180 天。输出应该类似于以下内容:
您应该会看到大约列出了 76 个活跃漏洞。
这些发现结果中的大部分都是因使用默认的 VPC 网络而生成的,因为此网络本身的设计并不安全。例如,它包含允许从任意 IP 地址进行 SSH 和 RDP 访问的防火墙规则。
-
现在向下滚动到下面的活跃漏洞卡片。
-
选择发现结果(按类别)标签页。
这样会显示环境中的漏洞,按漏洞的不同类别及其严重级别整理。“严重级别”是发现结果的一个属性,有助于预估该问题会给 Google Cloud 环境带来的风险。
严重级别无法更改,每种发现结果都具有由 SCC 预先决定的严重级别。下面列出了不同类型的严重级别及其常见示例:
- 严重 - 例如,从 GKE Pod 内部启动了反向 shell 会话。
- 高 - 例如,SSH 端口向整个互联网 (0.0.0.0/0) 开放;
- 中 - 例如,向某用户或服务账号授予了原初 IAM 角色 (Owner/Editor/Viewer);
- 低 - 例如,未收集 VPC 流日志
- 未指定 - 可能出现在 SCC 中,但不常见。
请注意,这里我们仅给出了不同严重级别的发现结果的示例。发现结果严重级别分类页面上介绍了设置发现结果严重级别的详细标准。
- 现在选择发现结果(按资源类型)标签页。这将显示按不同类型的可用 Google Cloud 资源分类的漏洞。
- 最后,选择发现结果(按项目)标签页。如果您在文件夹或组织根节点级别使用 SCC,此标签页会提供更丰富的信息。
- 在左侧菜单中的“Security Command Center”标题下,打开以下各个标签页并阅读下文对它们的说明:
-
威胁:在这里可以一目了然地查看 SCC 中分类为威胁的发现结果。下面是一些示例:
-
漏洞:利用此标签页,您可以快速浏览当前范围内(项目内部、文件夹内部或组织内部)可能存在的所有软件错误配置或缺陷。这样,您可以更加精细地掌握漏洞情况,从而深入分析每个漏洞。以下是一些漏洞示例:
-
法规遵从:显示有关您的项目对最重要合规性标准(例如 CIS、PCI DSS、NIST 800-53 等)的遵从情况的信息。
-
发现结果:利用此标签页可浏览 SCC 数据库中提供的所有发现结果。我们将在任务 3 中研究发现结果并学习如何处理它们。
-
来源:这些软件模块会读取日志文件并检查当前运行的进程,以分析 Google Cloud 资源的配置并监控当前的活动。可以说“来源”是 SCC 的“检测器”,它们会分析资源的配置并将信息发布到 SCC。
- 现在,点击浏览器中的“返回”按钮。
任务 2:在项目级别配置 SCC 设置
在此任务中,您将学习如何在项目级别配置 SCC 设置。
-
从概览页面的右上角点击设置。
-
确保您正位于服务标签页。
在此标签页中,您可以设置 SCC 的集成服务(也称为“来源”,是“SCC 的大脑”,在上一项任务中学过)的参数。在本实验中,术语“服务”与“来源”可互换使用。
服务会检测威胁和漏洞并向 SCC 提供相应信息。大多数服务仅在高级版 SCC 中可用,您在本实验中使用的便是高级版。
以下是您可以配置的内置服务:
- Security Health Analytics (SHA):查找并报告资源的错误配置(停用了日志、额外的 IAM 权限、公开泄露的服务)。我们的项目目前已启用了此服务,它在项目中检测到了 76 个漏洞。
- Web Security Scanner (WSS):扫描通过外部 IP 地址公开的公共 Web 应用,并检查是否存在 OWASP 十大风险中列出的漏洞。后面的实验中您将有机会使用此服务。
- Container Threat Detection (CTD):能够检测 Container Optimized OS 中最常见的容器运行时攻击(将在后面的实验中展示)。
- Event Threat Detection (ETD):是基于日志的威胁分析服务,可持续监控 Google Cloud 和 Google Workspace 日志以扫描是否存在潜在威胁。
- Virtual Machine Threat Detection:在 Hypervisor 级别分析虚拟机实例的内存,还能够检测虚拟机内存中发生的可疑活动。比如非预期的内核模块或运行中的加密货币挖矿软件。
- Rapid Vulnerability Detection (RVD):是零配置网络和 Web 应用扫描程序,能够主动扫描公共端点以检测很有可能被利用的漏洞。
-
点击 Security Health Analytics 的管理设置链接。
-
点击模块标签页。
“模块”是预定义或自定义的检测逻辑单元。如您所见,SCC 提供了许多种不同类型的模块,可帮助您检测资源的不同错误配置。您可以根据安全状况和有意监控的资源,轻松地在 SCC 中启用和停用不同类型的模块。
-
在过滤条件中,输入 VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED。
-
从“状态”下拉菜单中选择启用。
Security Health Analytics 现在将检查 VPC 子网的 enableFlowLogs
属性是否缺失或被设置为“false”。
现在您已熟悉了 Security Command Center 的不同服务以及如何配置这些服务,接下来将使用 SCC 找出并修复漏洞。
任务 3. 分析 SCC 中的漏洞发现结果并修复漏洞
在此任务中,您将学习如何管理漏洞发现结果并缓解漏洞。
- 打开导航菜单并选择安全 > Security Command Center > 风险概览。
- 从左侧菜单中,选择发现结果标签页。
- 将右上角的时间范围选择器设置为所有时间。
- 在屏幕左上角,找到查询预览窗口,其中包含用于对所有可用发现结果进行排序的过滤条件。
默认情况下,您在发现结果标签页中可看到状态为活跃的未忽略的发现结果。
每个发现结果都有两个属性“state”和“mute”,用于通过 SCC 中的各种过滤条件定义发现结果的可见性。
- 如果安全分析员不希望在 SCC 界面中看到不相关的干扰性发现结果,可以为发现结果设置“Mute”值,或让系统自动设置此值。
- “State”属性指示发现结果是需要关注并且尚未解决,还是已被修复或解决且不再活跃。
建议使用“mute”属性来管理发现结果生命周期和隐藏发现结果。更改“state”属性的操作通常由软件来源处理。
- 在“快速过滤条件”卡片中,选择类别默认网络。
-
请注意,“查询预览”中的查询字符串已更改(现在附加了
AND category="DEFAULT_NETWORK"
)。 -
选中“默认网络”旁边的复选框并选择更改活跃状态。
-
将此发现结果的状态设置为非活跃状态。
现在此发现结果已被设为非活跃并从屏幕中隐藏,因为默认情况下您只能看到活跃且未被忽略的发现结果。
- 点击 SCC 标题下的风险概览,然后点击发现结果,重置发现结果标签页视图。
-
现在点击修改查询按钮。
-
将查询编辑器中的查询字符串更改为
category="DEFAULT_NETWORK"
。 -
修改好后,点击应用按钮。
-
确保您只看到一条“Default network”发现结果。
如果在“快速过滤条件”下查看左侧的菜单,您会看到“显示非活跃发现结果”已选中。SCC 让您可以灵活地搜索活跃或者非活跃发现结果。现在,您将反转此发现结果的状态。
-
选中“默认网络”旁边的复选框并选择更改活跃状态。
-
将此发现结果的状态设置为活跃。
用户可以手动将发现结果设置为活跃或非活跃,但永远无法将其删除。仅当扫描程序在 13 个月的时间内未刷新某条发现结果时,系统才会自动将其删除。
如果安全扫描程序检查该发现结果时未检测到先前触发此发现结果的错误配置,会将其标记为“非活跃”。如果该漏洞仍存在于系统中,则此发现结果仍会保持原来的“活跃”状态。
-
点击“快速过滤条件”旁的全部清除按钮,重置“发现结果”标签页。
-
在“查询预览”窗口中,点击修改查询。
-
现在,复制并粘贴以下查询:
- 修改好后,点击应用按钮。
现在您应该会看到与子网相关的所有发现结果。我们默认的 VPC 网络是使用 --subnet-mode=auto
参数创建的,因此其所有子网均未启用专用 Google 访问通道,并且所有子网都不写入 VPC 流日志。
假设我们在测试环境中工作,因此不希望看到此网络中有关专用 Google 访问通道的 SCC 发现结果。
-
在“快速过滤条件”窗口中,选择类别专用 Google 访问通道已停用。
-
现在点击类别复选框,这样所有“专用 Google 访问通道已停用”发现结果都处于选中状态:
-
现在点击忽略选项按钮。
-
然后点击忽略。此操作会忽略现有发现结果。
-
依次点击风险概览和发现结果,重置发现结果查询。
现在,“专用 Google 访问通道已停用”发现结果已被忽略,您将不会再在控制台中看到它们。如您所见,忽略是过滤 Security Command Center 结果的一种有效方法,可让您精细地控制感兴趣的资源和发现结果。
默认网络的另一个错误配置是该网络中的子网的 VPC 流日志也被停用了。由于是在测试环境中工作,我们无需启用 VPC 流日志,因此将忽略与此类别相关的所有现有和未来发现结果。
- 点击按钮忽略选项 > 创建忽略规则。
这属于一次性操作,报告 PGA 已停用的新发现结果仍会出现在 SCC 中。 如果您创建忽略规则,则可以有效地忽略所有现有和新出现的发现结果。
-
在新窗口中,输入一个新的忽略规则 ID:muting-pga-findings。
-
对于忽略规则描述,请输入 Mute rule for VPC Flow Logs(针对 VPC 流日志的忽略规则)。
-
在“发现结果查询”中,输入以下过滤条件:
- 现在点击保存按钮。
您应该会在控制台底部看到一条通知,说明创建了一条忽略规则。
-
现在,请从左侧菜单中选择发现结果,刷新 SCC 主信息中心。
-
确保您没有再看到任何“专用 Google 访问通道已停用”或“流日志已停用”发现结果。
现在我们将再创建一个具有自动配置的子网的网络。
- 打开一个新 Cloud Shell 会话 () 并运行以下命令来创建此网络:
- 确保您看到类似以下内容的输出:
-
验证以上信息后,关闭此 Cloud Shell 窗口。
-
刷新 SCC 发现结果窗口,注意可以看到新的“专用 Google 访问通道已停用”发现结果,但没有与 VPC 流日志相关的发现结果(这是因为前面创建了忽略规则)。
-
虽然我们针对 VPC 流日志创建了忽略规则,SCC 仍支持使用查询编辑器来查看它们。
-
点击修改查询按钮并粘贴以下内容:
-
现在点击应用。
-
检查发现结果查询结果表,您会发现,“资源显示名称”列中显示了“defaults”和“SCC-lab-net”这两个网络。
-
在“查询预览”窗口中,点击修改查询。
-
现在,复制并粘贴以下查询:
-
修改好后,点击应用按钮。
-
现在我们将调查严重级别为“高”的两个发现结果,并进行相应修复。
-
在“快速过滤条件”部分,从严重性选项列表中选择高。
您应该会看到两个发现结果:“开放的 RDP 端口”和“开放的 SSH 端口”。生成这两个结果的原因在于“default”网络包含的两条防火墙规则,它们允许从整个互联网向此网络中的所有实例传输 SSH 和 RDP 流量。
- 点击开放的 RDP 端口发现结果。
一个新窗口即会显示。在此窗口中,您将看到关于问题本身的详细说明,受影响的资源列表以及可帮助您修复问题的后续步骤。
-
点击相应链接前往防火墙规则页面。此操作将打开一个新的标签页。
-
点击 default-allow-rdp 防火墙规则。
-
点击修改。
-
删除来源 IP 范围 0.0.0.0/0。
-
添加 35.235.240.0/20 作为来源 IP 范围并按 Enter 键。
-
切勿更改任何其他参数!
-
点击保存。
-
保存之后,关闭在其中修改此防火墙规则的浏览器标签页。
-
刷新 SCC 发现结果浏览器标签页。
-
您现在应该只看到一条严重级别为“高”的发现结果,即“开放的 SSH 端口”。
-
点击开放的 SSH 端口发现结果。
-
点击相应链接前往防火墙规则页面,此页面将在新的标签页中打开。
-
点击 default-allow-ssh 防火墙规则。
-
点击修改。
-
删除来源 IP 范围 0.0.0.0/0。
-
添加 35.235.240.0/20 作为来源 IP 范围并按 Enter 键。
-
切勿更改任何其他参数!
-
点击保存。
-
保存之后,关闭在其中修改此防火墙规则的浏览器标签页。
-
现在关闭有打开的发现结果说明的窗口,然后刷新浏览器窗口。
-
您现在应该看不到严重级别为“高”的发现结果。
现在您已成功使用 Security Command Center 找出并修复了 Google Cloud 环境中的严重安全漏洞。
恭喜!
通过本实验,您学习了如何探索 SCC 界面元素、在项目级别配置 SCC 设置以及分析和修复 SCC 漏洞。
后续步骤/了解详情
Google Cloud 培训和认证
…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。
上次更新手册的时间:2024 年 4 月 29 日
上次测试实验的时间:2024 年 4 月 29 日
版权所有 2024 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。