目录

VBS介绍

VBS组件要求


VBS介绍

基于虚拟化的安全性( Virtualization-based security  VBS)使用硬件虚拟化特性来创建和隔离一个与正常操作系统隔离的安全内存区域。Windows可以使用这种“虚拟安全模式”来托管许多安全解决方案,为它们提供了针对操作系统漏洞的大量保护,并防止试图破坏保护的恶意攻击的使用。

VBS使用Windows hypervisor来创建这种虚拟安全模式,并实施保护重要系统和操作系统资源的限制,或者保护安全资产(例如经过身份验证的用户凭证)。通过增加VBS提供的保护,即使恶意软件获得了对操作系统内核的访问权,潜在的漏洞也可以被极大地限制和遏制,因为系统管理程序可以防止恶意软件执行代码或访问平台机密。

一个这样的安全解决方案示例是管理程序强制的代码完整性(HVCI),它使用VBS来显著增强代码完整性策略的实施。内核模式代码完整性在启动所有内核模式驱动程序和二进制文件之前检查它们,并防止未签名的驱动程序或系统文件加载到系统内存中。

类似地,用户模式可配置的代码完整性策略在加载应用程序之前检查它们,并且只启动由已知的、已批准的签名者签名的可执行程序。HVCI利用VBS在安全的环境中运行代码完整性服务,为内核病毒和恶意软件提供更强的保护。hypervisor是系统软件的最特权级,它设置并强制跨所有系统内存的页面权限。页面只有在安全区域内的代码完整性检查通过后才可执行,而可执行页面是不可写的。这样,即使存在缓冲区溢出这样的漏洞,允许恶意软件试图修改内存,也不能修改代码页,修改后的内存也不能执行。

VBS组件要求

Hardware requirement Details
64-bit CPU Virtualization-based security (VBS) requires the Windows hypervisor, which is only supported on 64-bit IA processors with virtualization extensions, including Intel VT-X and AMD-v.
Second Level Address Translation (SLAT) VBS also requires that the processor’s virtualization support includes Second Level Address Translation (SLAT), either Intel VT-X2 with Extended Page Tables (EPT), or AMD-v with Rapid Virtualization Indexing (RVI).
IOMMUs or SMMUs (Intel VT-D, AMD-Vi, ARM64 SMMUs) All I/O devices capable of DMA must be behind an IOMMU or SMMU. An IOMMU can be used to enhance system resiliency against memory attacks.
Trusted Platform Module (TPM) 2.0 TPMs, either discrete or firmware, will suffice. For more information, see Trusted Platform Module (TPM) 2.0.
Firmware support for SMM protection System firmware must adhere to the recommendations for hardening SMM code described in the Windows SMM Security Mitigations Table (WMST) specification. The WSMT specification contains details of an ACPI table that was created for use with Windows operating systems that support Windows virtualization-based security (VBS) features. Firmware must implement the protections described in the WSMT specification, and set the corresponding protection flags as described in the specification to report compliance with these requirements to the operating system.
Unified Extensible Firmware Interface (UEFI) Memory Reporting UEFI firmware must adhere to the following memory map reporting format and memory allocation guidelines in order for firmware to ensure compatibility with VBS.

  • UEFI v2.6 Memory Attributes Table (MAT) - To ensure compatibility with VBS, firmware must cleanly separate EFI runtime memory ranges for code and data, and report this to the operating system. Proper segregation and reporting of EFI runtime memory ranges allows VBS to apply the necessary page protections to EFI runtime services code pages within the VBS secure region. Conveying this information to the OS is accomplished using the EFI_MEMORY_ATTRIBUTES_TABLE. To implement the UEFI MAT, follow these guidelines:

    1. The entire EFI runtime must be described by this table.
    2. All appropriate attributes for EfiRuntimeServicesData and EfiRuntimeServicesCode pages must be marked.
    3. These ranges must be aligned on page boundaries (4KB), and can not overlap.
  • EFI Page Protections -All entries must include attributes EFI_MEMORY_RO, EFI_MEMORY_XP, or both. All UEFI memory that is marked executable must be read only. Memory marked writable must not be executable. Entries may not be left with neither of the attributes set, indicating memory that is both executable and writable.
Secure Memory Overwrite Request (MOR) revision 2 Secure MOR v2 is enhanced to protect the MOR lock setting using a UEFI secure variable. This helps guard against advanced memory attacks. For details, see Secure MOR implementation.
Hypervisor Code Integrity (HVCI)-compatible drivers Ensure all system drivers have been tested and verified to be compatible with HVCI. The Windows Driver Kit and Driver Verifier contain tests for driver HVCI compatibility. There are four steps to verify driver compatibility:

  1. Use Driver Verifier with the new Code Integrity compatibility checks enabled.
  2. Run the Hypervisor Code Integrity Readiness Test in the Windows HLK.
  3. Test the driver on a system with VBS and HVCI enabled. This step is imperative to validate the driver's behavior with HVCI, as static code analysis tools simply aren't capable of detecting all HVCI violations possible at runtime.
  4. Use the Device Guard and Credential Guard hardware readiness tool.

转自:

https://docs.microsoft.com/en-us/windows-hardware/design/device-experiences/oem-vbs

Windows Hyper VBS Virtualization-based Security相关推荐

  1. 论文详读:LEMNA: Explaining Deep Learning based Security Applications

    我以我ppt的内容顺序介绍一下这篇论文,希望有错误的地方大家可以帮我指出嘻嘻 1.论文出处 论文名:LEMNA: Explaining Deep Learning based Security App ...

  2. Windows Service服务 出现System.Security.SecurityException: 未找到源,但未能搜索某些或全部事件日志

    [已解决]Windows Service服务 出现System.Security.SecurityException: 未找到源,但未能搜索某些或全部事件日志.不可访问的日志: Security. 青 ...

  3. windows下vbs脚本隐藏控制台

    每次想写python代码时,都需要打开IDE进行编写,并且需要创建许多小文件.如果使用jupyter就能够直接书写.但是jupyter需要手动通过控制台打开,这不够方便.通过把jupyter note ...

  4. Windows slmgr.vbs 命令详解

    系统软件授权管理工具主要是用来查看系统的激活状态.以及密钥许可证等信息 在现在不在是使用-接参数了,现在/接参数,详解可以在cmd窗口输入slmgr.vbs了解 常用参数: 使用方式: 再次提醒是使用 ...

  5. 【已解决】Windows Service服务 出现System.Security.SecurityException: 未找到源,但未能搜索某些或全部事件日志。不可访问的日志: Security。

    bat文件 内容为 cd C:\Windows\Microsoft.NET\Framework\v4.0.30319\ InstallUtil.exe   InstallUtil F:\Windows ...

  6. Windows运行vbs在微信下自动发送烟花、庆祝

    相关链接:wshShell.SendKeys模拟键盘操作 在txt下粘贴以下代码,修改txt文件为vbs,根据需求自行调整 Set WshShell=WScript.CreateObject(&quo ...

  7. 在64位Windows 7 激活BitDefender Internet Security 2010

    在默认情况下,我们在官方网站上下载下来的64位BitDefender Internet Security 2010 在成功安装后,你可以打开杀毒软件的主界面,你会发现在其标题栏有很是醒目的三个字--试 ...

  8. windows下vbs脚本添加网络打印机

    在我们维护过程中,经常添加网络打印机,如何实现自动化,让计算机批量添加呢?以下代码保存成扩展名师vbs文件,然后在域中组策略中实施即可. 代码如下: Set WshNetwork = CreateOb ...

  9. windows系统vbs脚本 恶搞将系统搞崩 死机 以及解决

    新建记事本 改后缀 *.vbs 复制下内容 do createobject("wscript.shell").run "notepad.exe" loop 效果 ...

最新文章

  1. 【转载】IntelliJ远程调试教程
  2. java 反射 慢在那里_Java 反射到底慢在哪?
  3. oracle执行减法,oracle时间的加法和减法
  4. 渥太华大学计算机工程,渥太华大学电气与计算机工程硕士专业.pdf
  5. CSS3的background-size:设置背景图片大小
  6. 排序算法python版本
  7. mysql 数据库表重建_mysql 数据库表重建
  8. 社保必须交满15年才能享受吗?
  9. 用Win2003做×××借线
  10. Activity常用设置
  11. 51单片机汇编_1_内外存储器转移数据
  12. 如何安装PDF打印机
  13. 学习Linux你必须知道的那些事儿
  14. 【TencentOS tiny学习】源码分析(6)——互斥锁
  15. 运营商精准大数据外呼系统
  16. 世界坐标系,相机坐标系,图像坐标系,像素坐标系转换
  17. Java中extends 与 implement 区别
  18. 中国移动MM7 API用户手册(四)
  19. 首域金融BOSCTIME_关于首域金融BOSCTIME|首域金融资料
  20. ReactiveX简介

热门文章

  1. python1 到n_怎么用python求1到n所有整数的和
  2. C语言逻辑类型与运算
  3. getResource()的几种路径方式
  4. win10如何更改计算机用户名,怎么更改账户用户名,教你win10系统更改账户用户名称教程...
  5. 「Python条件结构」使用if结构实现密码验证
  6. 独家丨DeepMind科学家、AlphaTensor一作解读背后的故事与实现细节
  7. ASEMI代理AD633JRZ原装ADI车规级AD633JRZ
  8. android无法启动adb服务,android – 初始化ADB时出错:无法创建调试桥:无法启动ADB服务器...
  9. 什么是SQL注入式攻击!如何防范SQL注入式攻击?
  10. ulipad 无法安装使用、无法调试、64位版本问题 ImportError: No module named comtypes 整体解决方案!