微软发布Windows Defender System Guard运行时认证技术,预期在平台安全方面
作者:CQITer小编 时间:2018-04-24 01:51
上周,微软推出了一项新的 Windows 平台安全技术:Windows Defender System Guard 运行时认证。这项技术主要用于应对软件中的攻击,与 Credential Guard 一样,利用基于虚拟化安全中涉及的源于硬件的安全技术。
微软表示,希望用户能够控制自己的设备,了解设备的安全健康状况。如果重要的安全功能失效,用户可以及时注意到并及时应对。而 Windows Defender System Guard 运行时认证这项新的 Windows 平台安全技术就可以满足这些需求。
在 Windows 10 Fall Creators 更新中,微软工作人员将所有系统完整性功能重新组织到 Windows Defender System Guard 中。内置于核心 Windows 操作系统中的Windows Defender System Guard运行时认证将逐步适用于 Windows 的所有版本。

很多漏洞利用都会针对安全技术发起攻击,以便在相同信任域中运行。例如,特权进程就是用于提供(至少是代码和数据层面的)隔离环境,与普通的用户模式进程隔离开来。NT 内核根据执行进程对象中保存的某些值确定进程是否受到保护,通过内核漏洞或驱动程序(例如 Mimikatz)篡改这些值就能有效地破坏进程保护。因此,将与篡改相关的安全决策移至单独的信任域会增加攻击者的攻击复杂程度。
运行时认证适用于多个场景:
为端点检测和响应(EDR)以及杀软供应商提供补充信号(包括与 Windows Defender 高级威胁防护堆栈的完全集成);
检测内核篡改、Rootkit和漏洞等问题;
受保护的游戏反作弊方案(例如,检测可导致游戏状态修改的进程保护旁路);
敏感交易(银行应用程序、交易平台)
有条件访问(启用和增强基于设备安全的访问策略)
第一阶段的 Windows Defender System Guard 运行时认证将在下一次 Windows 10 更新中推出,为未来的创新奠定基础。这项技术有助于构建新的操作系统功能,以便在系统遭遇完全入侵的情况下(例如通过内核级漏洞利用)检测入侵行为,并有效沟通。
认证与建议信任要在技术层面上引入 Windows Defender System Guard 运行时认证,最好从最明显的层级开始,例如最终可以向依赖方公开的客户端 API。因此,微软也正在开发可使用运行时认证的客户端 API。这个 API 将提供一份运行时报告,详细说明 Windows Defender System Guard 运行时认证时系统的安全状态,具体包括敏感系统属性的运行时间测量。
为了使运行时报告真正实现重要意义,必须以提供合理阻止篡改方案的方式生成运行时报告。这就要求:
运行时报告生成必须与攻击者隔离;
这种隔离必须是可以证明的;
运行时报告必须以在隔离环境之外无法再现的方式进行加密签名
运行时认证技术还涉及到 VBS 围圈(enclaves)的概念,VBS 围圈是指基于虚拟化安全的内存中受保护执行区域。在启用虚拟安全模式(VSM)的设备上,采用底层指令集架构(ISA)的虚拟化扩展将会从逻辑上把系统划分为两个(理论上更多)独立的区域:常见的运行 NT 内核的“正常”世界和运行安全内核(SK)的独立’安全’世界。这两个独立区域就称作“虚拟信任级别”(VTL),其中 NT 是 VTL-0,SK 是 VTL-1。
VBS 围圈使得“正常”VTL-0 用户模式过程的孤立部分成为可能。这个孤立部分所有代码和数据都存在于 VTL-1 中。一个围圈内外的事务都通过一个定义良好的、由 VSL 调用(NT 和 SK 用于通信的机制)支持的 API 来完成。结果就是,从 Windows Fall Creators Update(1709)开始,可以在一个区域内执行代码并保存数据,从而导致整个 VTL-0 “正常”模式(包括用户模式和内核模式)在执行过程中和保持在围圈内(在 VTL-1 中)时,不能直接作用于孤立代码和数据。
在 VBS 围圈中,运行时认证组件可以观察并证明报告中包含的一组安全属性。例如,应用程序可以要求 Windows Defender System Guard 从硬件支持的区域测量系统的安全性并返回报告。应用程序可以使用此报告中的详细信息来决定是执行敏感的金融交易还是显示个人信息。
VBS 围圈还可以暴露由特定 VBS 签名密钥签署的围圈认证报告。如果 Windows Defender System Guard 可以获得主机系统在 VSM 处于活动状态下运行的证据,则可以使用此证明和签署的会话报告来确保特定围圈正常运行。
至于运行时报告本身的签名,会在围圈内生成一个不对称的公私密钥对。公钥由 Windows Defender System Guard 证明服务后端签署以创建会话证书。此外,Windows Defender System Guard 证明服务后端会生成一个签名的会话报告,其中包含有关计算机的详细信息。这些详细信息包括启动安全属性,包括启用安全启动的计算机是否启动,以确保核心操作系统未被越狱或篡改。最后,运行时报告由配对的私钥在本地签名,该私钥永远不会离开围圈。依赖方可根据会话证书验证报告签名、确保以 Microsoft CA 为根的证书签名有效,进而轻松验证运行时和会话报告。




