为了帮助 Azure Trusted Launch 更有效地防范针对虚拟机 (VM) 的恶意 Rootkit 攻击,可通过 Azure 证明 终结点进行来宾证明,以监视启动序列的完整性。 此证明对于提供平台状态的有效性至关重要。
受信任启动虚拟机需要启用安全启动和虚拟受信任平台模块 (vTPM),才能安装证明扩展。 Microsoft Defender for Cloud 提供基于来宾证明的报告,用于验证状态以及虚拟机的启动完整性是否已正确配置。 若要了解有关 Microsoft Defender for Cloud 集成的更多信息,请参阅 受信任启动与 Microsoft Defender for Cloud 的集成。
Important
“启动完整性监视 - 来宾认证”扩展现已支持自动升级。 有关详细信息,请参阅自动扩展升级。
先决条件
你需要有效的 Azure 订阅和受信任启动虚拟机。
启用完整性监控
若要启用完整性监视,请遵循本部分中的步骤。
登录 Azure 门户。
选择资源(虚拟机)。
在“设置”下,选择“配置”。 在“安全类型”窗格中,选择“完整性监视”。
保存更改。
在 VM“概述”页上,完整性监视的安全类型应显示为“已启用”。
此操作将安装来宾证明扩展,可以通过“扩展 + 应用程序”选项卡上的设置来引用该扩展。
可以使用快速启动模板为受信任启动 VM 部署来宾证明扩展。
Windows操作系统
{
"name": "[concat(parameters('virtualMachineName1'),'/GuestAttestation')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2018-10-01",
"location": "[parameters('location')]",
"properties": {
"publisher": "Microsoft.Azure.Security.WindowsAttestation",
"type": "GuestAttestation",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion":true,
"enableAutomaticUpgrade":true,
"settings": {
"AttestationConfig": {
"MaaSettings": {
"maaEndpoint": "",
"maaTenantName": "GuestAttestation"
},
"AscSettings": {
"ascReportingEndpoint": "",
"ascReportingFrequency": ""
},
"useCustomToken": "false",
"disableAlerts": "false"
}
}
},
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('virtualMachineName1'))]"
]
}
Linux
{
"name": "[concat(parameters('virtualMachineName1'),'/GuestAttestation')]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2018-10-01",
"location": "[parameters('location')]",
"properties": {
"publisher": "Microsoft.Azure.Security.LinuxAttestation",
"type": "GuestAttestation",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion":true,
"enableAutomaticUpgrade":true,
"settings": {
"AttestationConfig": {
"MaaSettings": {
"maaEndpoint": "",
"maaTenantName": "GuestAttestation"
},
"AscSettings": {
"ascReportingEndpoint": "",
"ascReportingFrequency": ""
},
"useCustomToken": "false",
"disableAlerts": "false"
}
}
},
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('virtualMachineName1'))]"
]
}
- 通过初始部署受信任启动 VM 创建具有安全启动和 vTPM 功能的受信任启动 VM。 若要部署来宾证明扩展,请使用
--enable-integrity-monitoring。 作为 VM 所有者,可以使用 az vm create 自定义 VM 配置。
- 对于现有 VM,可以通过更新来启用启动完整性监视设置,以确保启用完整性监视。 可以使用
--enable-integrity-monitoring。
如果安全启动和 vTPM 设置为“启用”,则启动完整性也将设置为“启用”。
- 通过初始部署受信任启动 VM,创建具有安全启动和 vTPM 功能的虚拟机。 作为 VM 所有者,可以自定义 VM 配置。
- 对于现有 VM,可以通过更新来启用启动完整性监视设置。 确保安全启动和 vTPM 都设置为“启用”。
有关创建或更新 VM 以通过来宾证明扩展实现启动完整性监视的详细信息,请参阅部署启用了受信任启动的 VM (PowerShell)。
来宾证明扩展安装的故障排除指南
本部分介绍证明错误和解决方案。
症状
设置网络安全组 (NSG) 或代理时,Azure 证明扩展无法正常工作。 会出现类似于“Microsoft.Azure.Security.WindowsAttestation.GuestAttestation 预配失败”的错误。
解决方案
在 Azure 中,NSG 用于帮助筛选 Azure 资源之间的网络流量。 NSG 包含安全规则,这些规则可允许或拒绝多种 Azure 资源的入站和出站网络流量。 Azure 证明终结点应该能够与来宾证明扩展进行通信。 如果没有此终结点,受信任启动将无法访问来宾证明,而来宾证明可使 Microsoft Defender for Cloud 监视虚拟机启动序列的完整性。
若要使用服务标记取消阻止 NSG 中的 Azure 证明流量:
转到要允许出站流量的虚拟机。
在最左侧窗格的“网络”下,选择“网络设置”。
然后选择“创建端口规则”>“出站端口规则”。
若要允许 Azure 证明,请将目标设置为“服务标记”。 此设置允许更新 IP 地址范围,并自动为 Azure 证明设置允许规则。 将目标服务标记设置为AzureAttestation,并将操作设置为允许。
防火墙保护包含多个受信任启动 VM 的虚拟网络。 若要使用应用程序规则集合允许 Azure 证明服务流量通过防火墙,请执行以下操作:
转到已阻止来自受信任启动 VM 资源的流量的 Azure 防火墙实例。
在设置下,选择规则(经典)以开始解除防火墙对来宾证明的阻止。
在“网络规则集合”下,选择“添加网络规则集合”。
根据需求配置名称、优先级、源类型和目标端口。 将服务标记名称设置为AzureAttestation,并将操作设置为允许。
若要使用应用程序规则集合在防火墙中允许 Azure 证明 流量通过,请执行以下操作:
转到阻止了来自受信任启动 VM 资源的流量的 Azure 防火墙实例。
规则集合必须至少包含一个面向完全限定域名 (FQDN) 的规则。
选择应用程序规则集合并添加应用程序规则。
为应用程序规则选择名称和数字优先级。 将规则集合的操作设置为允许。
配置名称、源和协议。 源类型为单个 IP 地址。 选择 IP 组以允许多个 IP 地址通过防火墙。
注释
可以配置源类型、服务、目标端口范围、协议、优先级和名称。
相关内容
详细了解受信任启动和部署受信任启动 VM。