vSphere 6.7 新特性 — 基于虚拟化的安全 (VBS)
https://docs.microsoft.com/zh-cn/windows-hardware/design/device-experiences/oem-vbs
VBS 简介
基于虚拟化的安全 (VBS – Virtulization Based Security) 是微软专门 Windows 10 或 Windows Server 2016 在虚拟化环境下新增的一个安全特性,VBS 综合利用了 CPU 硬件、系统固件、Hypervisor 所提供的安全特性,在内存中隔离出一块安全区域供虚机使用,虚机中的 Windows 系统能够利用 VBS 所提供的“虚拟安全模式”来实现一些安全解决方案,让它们很大程度上免受恶意软件的攻击,从而提高系统的安全性。VBS 利用 Hypervisor 来进入“虚拟安全模式”来强制保护一些重要的系统资源,例如用户帐号密码。即便恶意软件攻陷了操作系统的核心代码,它能造成的威胁也被极大地遏制了,因为在 VBS 安全模式下, Hypervisor 能够有效地阻止恶意软件的各种行为,包括执行代码或访问系统机密数据。
Hypervisor 强制的代码一致性检查 HVCI (Hypervisor-Enforced Code Integrity) 就是 VBS 安全解决方案的一个例子,在代码运行之前,利用 VBS 所提供的安全特性来强制执行代码一致检查。
- 核心模式代码:所有的操作系统核心模式驱动和代码在运行之前都要执行一致性检查,然后才能被装载进内存执行,未经过微软数字签名的代码或系统文件将被彻底阻止。
- 用户模式代码:所有应用代码在运行之前都要经过检查,只有被已知的开发商正确数字签名的代码才会被执行。
HVCI 在 VBS 所提供的一个安全环境中进行代码一致性检查,从而实现对系统内核级病毒和恶意代码的隔离。Hypervisor 作为权限最高的系统软件,对所有的系统内存设置了页面访问权限,内存页面中的代码只有通过一致性检查后才能被执行,并且包含可执行代码内存页面是只读的。这样一来,恶意代码利用系统漏洞 (如缓存溢出) 来改写内存代码就办不到了。
VBS 安全机制可不是在 Windows 操作系统层面可以单独实现的,需要服务器 CPU、TPM、系统固件满足相关的条件 (详情请见微软相关文档),并且在 Hypervisor 层面提供支持。vSphere 6.7 中实现了对于 VBS 的支持,从而为运行 Windows 操作系统的虚机提供更高安全等级的保护,满足企业在信息安全方面的合规要求。
vSphere 6.7 对于 VBS 的支持
前提条件
为了激活 VBS 功能,虚机的配置必须满足以下条件:
虚机的硬件版本必须是版本14或以后的版本,必须安装以下两种操作系统:
- Windows 10 Enterprise, 64-bit
- Windows Server 2016
注意:务必安装上所有的操作系统更新,不然 VBS 可能不起作用。
激活 Windows 2016 中的 VBS 功能
创建虚机的时候指定安装的操作系统是 Windows Server 2016。
虚机创建好之后勾选“Enable Virtualization Based Security”选项开关。
当 Windows Server 2016 启动后,再完成以下两个步骤。
- 在组策略设置中激活 VBS
- 在 Windows Server 2016 上激活 Hyper-V
运行 gpedit.msc 来启动组策略编辑器,访问:Computer Configuration > Administrative Templates > System > Device Guard > Turn On Virtualization Based Security。把组策略设置为 Enabled,并且设置好以下参数,完成后选择重启系统。
- Select Platform Security level : Secure Boot and DMA Protection
- Virtualization Based Protection of Code Integrity : Enabled with UEFI lock
- Credential Guard Configuration : Enabled with UEFI lock;如果选择 ”Enabled without UEFI lock” 的话,允许你远程修改这个设置。
接下来在 Windows Server 2016 上激活 Hyper-v:启动 Server Manager,在 Dashboard 下选择 “Add roles and features”。
点击 Next 并接受缺少配置,在 Server Roles 里选中 Hyper-V,并且把 “Include Management tools” 选项打上勾,然后点击 OK;继续剩余的步骤并且选择缺省选项,最后点击 Finish 完成设置。
检查 VBS 安全功能是否生效
激活 Hyper-V 特性后重启 Windows 系统,运行 msinfo32.exe 命令,在 System Summary 下你可以看到 “Device Guard Security Services Configured” 已经配置好了 Credential Guard, Hypervisor Enforced Code Integrity,这表明 VBS 安全功能已经生效。
本文主要内容来自于Rajesh Radhakrishnan 的博客文章 Virtualization Based Security (VBS) in vSphere 6.7。
vSphere 6.7 新特性 — 基于虚拟化的安全 (VBS)的更多相关文章
- atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结
atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结 1. Windows Server 2008 新特性也可以归纳为4个方面. 1 2. 相 ...
- JDK 5 ~ 11 新特性倾情整理
为了大家对JDK有一个全面的了解,下面我为大家整理了JDK5~11的所有关键新特性! 先看一下JDK的版本迭代图: 注: OpenJDK和JDK区别 GPL协议通用性公开许可证(General ...
- Java程序员必备基础:JDK 5-15都有哪些经典新特性
前言 JDK 15发布啦~ 我们一起回顾JDK 5-15 的新特性吧,大家一起学习哈~ 本文已经收录到github ❝ https://github.com/whx123/JavaHome ❞ 「公众 ...
- C# 7.0 新特性1: 基于Tuple的“多”返回值方法
本文基于Roslyn项目中的Issue:#347 展开讨论. 1. C# 7.0 新特性1: 基于Tuple的“多”返回值方法 2. C# 7.0 新特性2: 本地方法 3. C# 7.0 新特性3: ...
- 构建基于WinRT的WP8.1 App 02:数据绑定新特性
基于WinRT的Windows Phone 8.1以及Windows 8.1中Xaml数据绑定增加了一些新特性. FallBackValue属性:FallBackValue在绑定的值属性值不存在时,可 ...
- Atitit atiplat_reader 基于url阅读器的新特性
Atitit atiplat_reader 基于url阅读器的新特性 1.1. feature功能特性1 1.2. note1 1.1. feature功能特性 支持url数据源,实际就是只支持一层连 ...
- 基于Ubuntu和基于Debian的Linux Mint 20新特性一览
导读 Linux Mint 20 将基于 Ubuntu 20.04 LTS,同时,其 LMDE(Linux Mint Debian Edition,Debian 版本)4 也将到来,LMDE 版本基于 ...
- [置顶]
kubernetes1.7新特性:新增StorageOS卷插件和Local持久存储
背景介绍 在Kubernetes中卷的作用在于提供给POD存储,这些存储可以挂载到POD中的容器上,进而给容器提供存储. 从图中可以看到结构体PodSpec有个属性是Volumes,通过这个Volum ...
- QT5.9 新特性与版本回顾
原文链接: http://blog.qt.io/blog/2017/05/31/qt-5-9-released 翻译内容如下,采用的是第三方某在线翻译软件,所以有些地方不是太精确,纵然大吉做了一定的调 ...
随机推荐
- yolov3输出检测图片位置信息
前言 我们在进行图片识别后需要进行进一步的处理,该文章会介绍:1.怎样取消lables;2.输出并保存(.txt)标记框的位置信息 一.去掉label 在darknet/src/image.c 收索d ...
- 十七、React路由嵌套:头部导航+侧边导航
一.概述 实现功能:点首页,展示首页,同时在左侧有个首页的各个栏目导航:点用户,同首页: 二.代码实现 1. src/App.js import React from 'react'; import ...
- docker-compose(grafana influxdb) + telegraf 快速搭建简单监控
灵活实现方案: 1: telegraf 为go 语言写得占用内存小 收集主机各项监控数据 定时写入 时序DB influxdb ------------------------&qu ...
- MySQL报错注入函数汇总及常用注入语句
版权声明:本文转载自网络内容,下面附原创链接原创链接:https://blog.csdn.net/Auuuuuuuu/article/details/91415165 常用函数 字符串连接函数,将多个 ...
- idea基于springboot搭建ssm(maven)
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/liboyang71/article/det ...
- Express - 采用bcryptjs进行密码加密
1.安装bcryptjs模块 npm install bcryptjs --save 2.在需要加密的模块中引入bcryptjs库 require('bcryptjs'); 实战 : /** ...
- Go语言 一维数组的使用
程序源码 package main import ( "fmt" // 导入 fmt 包,打印字符串是需要用到 ) func main() { // 声明 main 主函数 var ...
- SpringMVC: JSON
SpringMVC:JSON讲解 什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛. 采用完全独立于编 ...
- Web基础之Mybatis
Web基础之Mybatis 对比JdbcTempalte,mybatis才能称得上是框架,JdbcTempalte顶多算是工具类,同时,对比Hibernate,Mybatis又有更多的灵活性,算是 ...
- 【Vue中的坑】Vue中的@mouseenter没反应?
在开发中想实现鼠标悬浮,然后发现事件不由被出发,查找资料,发现并不是所有情况都不能用 下面就简单的说一下如何避免这种情况 如果你的悬浮事件是在 a 标签上,那么你直接使用就会出问题,你需要加一个nat ...