准备工作
- 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
- 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
- 在屏幕左上角,点击开始实验即可开始
Create the VM with desired configurations
/ 25
Download vulnerable web application files on the VM
/ 25
Run a Web Security Scanner scan and detect application vulnerabilities
/ 25
Correct vulnerabilities and rescan your application using Web Security Scanner
/ 25
Web Security Scanner (WSS) 是 Security Command Center 的内置服务之一,可用于识别 App Engine、Google Kubernetes Engine (GKE) 和 Compute Engine Web 应用中的安全漏洞。
该服务会抓取您的应用,跟踪起始网址范围内的所有链接,并尝试执行尽可能多的用户输入和事件处理程序。它可自动扫描和检测四种常见漏洞:跨站脚本攻击 (XSS)、Flash 注入、混合内容(HTTPS 网页中的 HTTP 内容)以及过时/不安全的库。
Web Security Scanner 可让您及早发现漏洞,并且误报率极低。您可以轻松设置、运行、安排和管理安全扫描。
在本实验中,您将使用 Web Security Scanner 扫描 Python Flask 应用中的漏洞。
在本实验中,您将学习如何执行以下任务:
对于每个实验,您都会免费获得一个新的 Google Cloud 项目及一组资源,它们都有固定的使用时限。
请使用无痕式窗口登录 Qwiklabs。
留意实验的访问时限(例如 1:15:00)并确保能在相应时间段内完成实验。
系统不提供暂停功能。如有需要,您可以重新开始实验,不过必须从头开始。
准备就绪时,点击开始实验。
请记好您的实验凭据(用户名和密码)。您需要使用这组凭据来登录 Google Cloud 控制台。
点击打开 Google 控制台。
点击使用其他帐号,然后将此实验的凭据复制并粘贴到相应提示框中。
如果您使用其他凭据,将会收到错误消息或产生费用。
接受条款并跳过恢复资源页面。
Cymbal Bank 是一家美国零售银行,拥有 2,000 多个分支机构,遍布美国的 50 个州。它提供综合性借贷服务,这些服务在一个稳健的支付平台上运营。Cymbal Bank 是一家正在经历数字化转型的传统金融服务机构。
Cymbal Bank 成立于 1920 年,原名为 Troxler。在 Troxler 大力投资了 Cymbal Group 专有的 ATM 后,Cymbal Group 于 1975 年收购了该公司。随着该银行发展成为美国的领先银行,他们制定了以实现客户体验现代化为重心的战略,变革范围包括分支机构提供的线下服务,以及银行于 2014 年发布的应用所提供的数字服务。Cymbal Bank 在全美有 42,000 名员工。据报道,其 2019 年的收入为 240 亿美元。
Cymbal Bank 有意使用 Google Cloud 技术为其企业客户开发一款新的银行应用。应用安全至关重要,该银行的首席技术官希望了解 Google Cloud 如何识别和缓解应用安全漏洞。作为一名云安全工程师,您的任务是演示 Security Command Center 先进的应用漏洞扫描功能。
在此任务中,您将设置基础设施,向 Cymbal Bank 的首席技术官演示应用漏洞。具体来说,您需要部署一个虚拟机,并启用一条防火墙规则,以便 Web Security Scanner 能够访问您打算部署且存在漏洞的应用。
在 Google Cloud 控制台标题栏中,点击激活 Cloud Shell ()。如果出现提示,点击继续。
运行以下命令,创建一个可用于扫描存在漏洞的 Web 应用的静态 IP 地址:
复制 IP 地址(输出中的一行),并将其保存到记事本中。
运行以下命令来创建一个虚拟机实例,以便运行存在漏洞的应用:
启动脚本会安装 python-flask(一个 Web 应用框架),它用于运行一个简单的 Python 应用,该应用演示了跨站脚本攻击 (XSS) 漏洞,这是一种常见的 Web 应用安全漏洞。
点击检查我的进度以验证是否完成了以下目标:
在此任务中,您将获取应用代码并引入一个漏洞,以便让 Web Security Scanner 检测该漏洞。这是以应用的形式呈现的,该应用是一个简单的表单,用于接收用户的输入并按原样输出。
在 Cloud 控制台的导航菜单 () 中,点击 Compute Engine > 虚拟机实例。
首次初始化可能需要一分钟时间。
然后点击实例旁边的 SSH 按钮:
这将在新窗口中打开与虚拟机实例的 SSH 连接。
输出:
找到您之前复制到记事本中的虚拟机的静态 IP 地址。
将下方网址字段中的 YOUR_EXTERNAL_IP 替换为该 IP 地址,然后在新浏览器标签页中打开该网址:
Cymbal Bank 的企业银行门户网站应该会显示一个 Web 表单。
您应该会看到以下提醒窗口。
这是 Web 应用中常见的漏洞:跨站脚本攻击漏洞。跨站脚本攻击 (XSS) 是一种漏洞,它允许攻击者在用户浏览器中,以您的应用为环境来执行恶意脚本。您的浏览器会将字符串解释为合法的 JavaScript 脚本并执行。
通过利用 XSS 漏洞,攻击者将 JavaScript 脚本注入 HTML 页面后,对于访问该页面的受害者的已登录会话,攻击者几乎可以获得不受限制的访问权限:他们可能会窃取用户数据、篡改数据、更改隐私或安全设置,甚至完全改变产品的外观和运营方式。更重要的是,一个应用中的 XSS 漏洞(无论多么无关紧要)都可能会危及同一网域内的其他内容。
这是 Web Security Scanner 可以帮助您识别的众多应用漏洞之一。
点击检查我的进度以验证是否完成了以下目标:
现在,该存在漏洞的应用已启动,接下来可以向首席技术官展示 Web Security Scanner 的强大功能了。首先,您需要配置 WSS 用来运行的 API。
切换回 Cloud 控制台浏览器标签页。
从导航菜单 () 中,选择 API 和服务 > 库。
在“搜索 API 和服务”字段中,输入 Web Security Scanner,然后按 Enter 键。
选择 Web Security Scanner API。
点击启用以启用 Web Security Scanner API。
点击检查我的进度以验证是否完成了以下目标:
在此任务中,您将配置并设置应用扫描,以检查是否发现了安全漏洞。
打开导航菜单 (),依次选择安全 > Web Security Scanner。
点击 + 新建扫描。
在起始网址部分,起始网址 1 字段中应该已经预先填充了您的静态 IP 地址。
添加端口号 8080,使起始网址类似于以下格式:
删除起始网址 2(如有)。
请花点时间查看创建新扫描屏幕上的其余字段:
验证身份验证是否仍设置为无,以及时间安排是否设置为从不。
点击显示更多,调查其余设置。
点击保存,创建扫描。
如果会话超时,请运行以下命令来重启应用:
在 SSH 窗口中,您应该会开始看到生成的日志,例如下面的示例,这是 Web Security Scanner 在测试所有可能的网址是否存在潜在漏洞。
输出:
您可能会看到包含以下 HTTP 状态代码的日志语句:
如需了解详情,请查看 HTTP 状态和错误代码文档。
扫描运行时,您可以随意浏览结果、已抓取的网址和详细信息标签页。您还可以观看此入门视频或此漏洞扫描视频,详细了解 Web Security Scanner。
Web Security Scanner 能够扫描所有起始网址,并检测 Cymbal Bank 应用中的 XSS 漏洞。对于像 Cymbal Bank 这样注重安全性的组织来说,能够自动检测这些严重漏洞是一大优势。
点击检查我的进度以验证是否完成了以下目标:
现在,您已经演示了 Web Security Scanner 是如何检测到 XSS 漏洞的,接下来,您将修复该漏洞并再次运行应用扫描。
# 符号,并将其添加到下一行的开头(确保正确缩进代码)。最后几行必须与以下内容类似:
html_escape_table 是一个字典,其中包含特殊 HTML 字符(例如“<”)与其文本表示形式的一对一配对。此表用于转义特殊的 HTML 字符,以便表单仅将提交内容作为原始文本来接收和解读。如需了解详情,请参阅什么是 HTML 转义?。现在,输入 CTRL+X、Y 和 Enter 以保存更改。
重新运行应用:
返回 Google Cloud 控制台浏览器标签页(Web Security Scanner 页面应该仍处于打开状态):
点击页面顶部的运行。
在 SSH 窗口中,您应该会开始看到日志,其中 Web Security Scanner 会测试应用网址是否存在潜在漏洞。
输出:
在等待扫描结果期间,请在单独的标签页中使用浏览器登录到网址 http://<EXTERNAL_IP>:8080。
Web 表单会再次显示。
在 Web 表单中,输入您之前输入的同一字符串:
现在点击发布按钮。
现在验证您在浏览器中收到了以下字符串:
返回 Google Cloud 控制台,即您之前停留的 Web Security Scanner 页面。
点击页面顶部的运行,重新扫描您的应用。
您应该很快会注意到结果中没有再显示 XSS 漏洞了。
点击检查我的进度以验证是否完成了以下目标:
您已成功向 Cymbal Bank 的首席技术官演示了如何使用 Google Cloud 强大的 Web Security Scanner 解决方案来识别和修复 XSS 漏洞。
完成实验后,请点击结束实验。Google Cloud Skills Boost 会移除您使用过的资源并为您清理帐号。
系统会提示您为实验体验评分。请选择相应的星级数,输入评论,然后点击提交。
星级数的含义如下:
如果您不想提供反馈,可以关闭该对话框。
如果要留言反馈、提出建议或做出更正,请使用支持标签页。
…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您检验并证明您在 Google Cloud 技术方面的技能与专业知识。
上次更新手册的时间:2025 年 2 月 27 日
上次测试实验的时间:2025 年 2 月 27 日
版权所有 2026 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名称和产品名称可能是其各自相关公司的商标。
此内容目前不可用
一旦可用,我们会通过电子邮件告知您
太好了!
一旦可用,我们会通过电子邮件告知您
一次一个实验
确认结束所有现有实验并开始此实验