练习 - 管理安全性和 Microsoft Defender for Cloud

已完成

在本练习中,你将确认已启用 Microsoft Defender for Cloud,并将探索上一单元中提及的各项功能中的某些功能。

配置 Microsoft Defender for Cloud

  1. 在 Azure 门户中,转到 Azure SQL 数据库逻辑服务器。

  2. 在左侧窗格的“安全性”下,选择“Microsoft Defender for Cloud”。 选择“启用状态”旁的“配置”链接

  3. 查看为 Azure SQL 数据库逻辑服务器所做的选择。 在同一窗格中,提供了关于漏洞评估和高级威胁防护的信息。

    此存储帐户已作为 Azure SQL 数据库的部署脚本的一部分进行部署。 如果要接收每周一次的定期扫描的结果,请查看相关选项并添加电子邮件地址。 取消选中“同时向管理员和订阅所有者发送电子邮件通知”。

  4. 就像可以配置接收漏洞评估扫描的用户一样,还可以配置接收高级威胁防护警报的用户。 在沙盒订阅中,你没有权限进行订阅级别的电子邮件设置,因此你无法“在 Azure 安全中心将联系详细信息添加到订阅的电子邮件设置”。

  5. 更新所有设置后,选择“保存”。

    通过配置这些设置,你将能够完成此活动中的一些其他步骤。 稍后你将看到更多漏洞评估和高级威胁防护。

数据发现和分类

  1. 在 Azure 门户中返回 AdventureWorks 数据库。 在左侧窗格的“安全性”下,选择“数据发现和分类”

  2. 查看数据发现和分类,它提供用于发现、分类、标记和报告数据库中的敏感数据的高级功能。

    此向导类型的视图类似于(但不完全相同)目前 SQL Server 中通过 SQL Server Management Studio (SSMS) 使用的数据发现和分类工具。 Azure SQL 数据库不支持使用 SSMS 向导。 可以使用 Azure 门户实现类似功能(Azure SQL 数据库支持)。

    可以在所有部署选项中使用 Transact-SQL 来添加或删除列分类以及检索分类。

  3. 选择“分类”选项卡。

  4. 数据发现和分类会尝试根据表中的列名来识别潜在敏感数据。 查看部分建议标签,然后选择“全选”>“接受选定建议”。

  5. 选择菜单左上角附近的“保存”。

  6. 最后,选择“概述”选项卡以查看概述仪表板并查看已添加的分类。

    Screenshot of the Data Discovery & Classification overview.

漏洞评估

  1. 选择“安全性”下的“Microsoft Defender for Cloud”设置,查看 AdventureWorks 数据库的“Microsoft Defender for Cloud”仪表板。

  2. 若要开始查看漏洞评估功能,请在“漏洞评估结果”下,选择“查看漏洞评估的其他结果”。

  3. 选择“扫描”以获取最新的漏洞评估结果。 此过程将需要一些时间,且漏洞评估会扫描 Azure SQL 数据库逻辑服务器中的所有数据库。

    Screenshot of how to kick off a Vulnerability Assessment scan.

    获得的视图与下图不完全相同,但应类似:

    Screenshot of the new Vulnerability Assessment dashboard after scan.

  4. 每个安全风险都有风险级别(高、中或低)和其他信息。 现行规则基于 Internet 安全中心提供的基准。 在“结果”选项卡中,选择一个漏洞。 在示例中,选择安全检查 ID“VA2065”,以获取类似下图所示的详细视图。 查看状态和其他可用信息。

    注意

    如果“VA2065”没有失败,则稍后可以根据发生的任何失败的安全检查,执行类似练习。

    Screenshot of the VA2065 security risk.

    在此图中,漏洞评估建议配置已设置防火墙规则的基线。 拥有基线后,就可以监视和评估任何更改。

  5. 根据安全检查,将提供备选视图和建议。 查看所提供的信息。 对于此安全检查,可以选择“将所有结果添加为基线”按钮,然后选择“是”以设置基线。 我们现在已拥有基线,此安全检查将在结果与基线不同的所有将来扫描中失败。 选择右上角的 X 关闭特定规则的窗格

  6. 在示例中,我们通过选择“扫描”并确认 VA2065 现在显示为“已通过”安全检查来完成了另一次扫描。

    如果选择前面已通过的安全检查,应该能够看到配置的基线。 如果将来发生任何更改,则漏洞评估扫描会选取它,且安全检查将失败。

高级威胁防护

  1. 选择右上角的“X”以关闭“漏洞评估”窗格并返回到数据库的“Microsoft Defender for Cloud”仪表板。 在“安全事件和警报”下,不应显示任何项。 这意味着“高级威胁防护”未检测到任何问题。 高级威胁防护检测异常活动,指示尝试访问或利用数据库的行为异常且可能有害。

    在此阶段不会看到任何安全警报。 在下一步中,将运行会触发警报的测试,因此可以在高级威胁防护中查看结果。

    高级威胁防护可用于识别威胁,并在怀疑发生以下任何事件时发出警报:

    • SQL 注入
    • SQL 注入漏洞
    • 数据外泄
    • 不安全操作
    • 暴力攻击
    • 异常客户端登录

    在本部分中,你将了解如何通过 SSMS 触发 SQL 注入警报。 SQL 注入警报适用于自定义编写的应用程序,而不适用于标准工具(例如 SSMS)。 因此,要通过 SSMS 触发警报来进行 SQL 注入测试,你需要“设置”“应用程序名称”,这是连接到 SQL Server 或 Azure SQL 的客户端的连接属性。

    要获得本部分的完整体验,需要拥有在本练习第一部分中为高级威胁防护警报提供的电子邮件地址的访问权限(在本沙盒中无法完成)。 如果需要更新,请先进行更新,再继续执行操作。

  2. 在 SSMS 中,选择“文件”>“新建”>“数据库引擎查询”,以使用新连接创建查询。

  3. 在主登录窗口中,按正常方式使用 SQL 身份验证登录 AdventureWorks。 在连接之前,请选择“选项”>>>“连接属性”。 对于“连接到数据库”选项,输入名称“AdventureWorks”。

    Screenshot of how to connect to a specific database.

  4. 选择“其他连接参数”选项卡,然后在文本框中插入以下连接字符串:

    Application Name=webappname
    
  5. 选择“连接”。

    Screenshot of how to connect with an app name.

  6. 在新查询窗口中粘贴以下代码,然后选择“执行”

    SELECT * FROM sys.databases WHERE database_id like '' or 1 = 1 --' and family = 'test1';
    

    在几分钟内,如果可以配置电子邮件设置(无法在沙盒中完成),你将收到如下所示的电子邮件:

    Screenshot of an Advanced Threat Protection threat detected email.

  7. 在 Azure 门户中,转到 AdventureWorks 数据库。 在左侧窗格的“安全性”下,选择“Microsoft Defender for Cloud”。

    在“安全事件和警报”下,选择“在 Defender for Cloud 中查看更多关于其他资源的警报”。

  8. 现在可以看到总体安全警报。

    Screenshot of the security alerts.

  9. 选择“潜在 SQL 注入”以显示更具体的警报并接收调查步骤。

  10. 作为清理步骤,考虑在 SSMS 中关闭所有查询编辑器并删除所有连接,以免在下一练习中意外触发其他警报。

在本单元中,你了解了如何配置和应用 Azure SQL 数据库的一些安全功能。 在下一个单元中,你将通过在端到端方案中组合各种安全功能来扩展所学到的知识。