查看: 2209|回复: 1
收起左侧

[转帖] 内核隔离、Device Guard和反病毒软件

[复制链接]
AlphaRabbit
头像被屏蔽
发表于 2023-11-27 22:57:02 | 显示全部楼层 |阅读模式
本帖最后由 AlphaRabbit 于 2023-11-27 23:20 编辑

备份位于我的博客:https://www.iorikosakura.com.cn/2023/11/device-guard.html

来一段开幕雷击:
基于虚拟化的安全性(VBS)使用硬件虚拟化和 Windows 虚拟机监控程序来创建隔离的虚拟环境,该环境成为假定内核可能受到威胁的 OS 的信任根。 Windows 使用此独立环境来托管许多安全解决方案,为它们提供大幅增强的操作系统漏洞防护,并防止使用试图破坏保护的恶意攻击。 VBS 强制实施限制来保护重要的系统和操作系统资源,或保护安全资产(例如经过身份验证的用户凭据)。
怎么样?微软这个介绍是不是说了跟没说一样?(笑)

我在这里将其翻译成“人话”,先来个图:





这样是不是直观多了呢?我们可以很明确的看到Windows做了什么:第一步,Windows将自己的内核部分拆分成了两个。


其中一部分放到了被称为VSM(非正式翻译:安全虚拟模式)的部分,这部分是整个Windows的信任根,Windows将包含在这里的部分视作整个操作系统运行时(Runtime)的信任“起源”(根,Trustroot)。


第二部分就是在玩你的电脑(老婆)时会触碰到的部分,这部分是“常态部分”,但是请注意:她依旧运行在虚拟化管理器(Hypervisor,也叫“虚拟机监视器”)上,也就是说她也只是个虚拟机。


Windows使用VTL(虚拟环境信任等级,Virtual Trust Levels)来区分这两个环境,VSM被定义为VTL 0,而常态部分被定义为VTL 1。VTL 0是最高级别的信任等级。


而今天的主角“内核隔离”(过去叫Device Guard)就是基于这个东西构建出来的——在这个体系中,高VTL可以无条件控制低VTL的虚拟环境,但反过来不可以。


因此,Windows的“核心部分”(在理想情况下)会被严密的保护起来,因此任何第三方软件都无法触碰到Windows内核——即使她通过加载驱动的方式进入了内核态,也无法触碰Windows内核。


那为什么反病毒软件和内核隔离会打起来呢?这要从微软当初加入PatchGuard(内核补丁保护)说起:


微软认为第三方软件任意的对内核进行热补丁(例如挂钩)导致了大量的蓝屏,但客户并不会觉得是第三方软件的问题,而是微软是大脑残,这导致微软非常的安格瑞。


(你有没有觉得这就和“买Intel CPU电脑出问题是自己的问题,买AMD CPU出问题那就是AMD的问题”一个味道?)


因此在Windows 2003/XP 64位时代,微软就加入了PatchGuard(注解:媒体公开的什么微软在Vista加入内核补丁保护属于胡扯,微软的文档和其他第三方内核开发者的结论是在Windows 2003 64bit时就已经加入),明确表态不支持任何第三方软件通过对内核进行热补丁的方式来“实现自己的功能”——这也包括反病毒软件(AV/NGAV/EDR……)。


因此在那个时代,各路反病毒软件都在搞如何绕♀过PatchGuard,比如什么360核晶、卡巴斯基的“虚拟化支持”、Avast的“虚拟化保护加强”balabala说的很唬人,实际上就是为了绕过PatchGuard以重新实现自己的超能力(?)。


而为什么要用到虚拟化,很好,这里提到一个远古的攻击方式:blue pill(蓝色药丸)攻击。


蓝药丸攻击的原理是恶意软件创建一个恶意的虚拟机管理器,这个虚拟机管理器什么都不干,只是把你的操作系统内核丢进去变成他的虚拟机,从而可以任意操纵内核而不会触发任何安全机制。


这些反病毒软件的做法也是如此:他们的“虚拟化加强”就是“蓝药丸攻击”,本质上来说就是Rootkit——请注意:Rootkit本身只是个中性词,你要看这个Rootkit最终的目的是什么而不是她干了什么。


(不然?我问你:一个在Windows 7上会利用虚拟化技术绕过PG,然后还会扫描整个内存里所有二进制代码并将其dump下来上传给开发商的软件,她是不是恶意软件?)


(揭秘:答案就是TP反作弊,你说她是不是恶意软件?)


而这里我们就看到为什么反病毒软件厂商对什么勾八PatchGuard、Device Guard(内核隔离以前的名字)意见那么大——微软不分青红皂白地禁止第三方软件对内核进行热修补(也不允许通过热修补内核来实现自己的功能)导致反病毒软件再也没有了过去的超感知(?)能力,她们必须得找一些能力更弱的(微软允许的)方法来实现功能——这导致现在是如果Windows蓝屏那是卡巴斯基(或者别的反病毒软件)太垃圾了而不是Windows有大病。


(你有没有觉得这就和“买Intel CPU电脑出问题是自己的问题,买AMD CPU出问题那就是AMD的问题”一个味道?×2)


总结:微软试图把锅甩给第三方软件,但恶意软件作者表示我tmd根本不care、不想好好写软件的作者也根本不care,但反病毒软件厂商表示微软你有大病的故事。

参考资料:
https://en.wikipedia.org/wiki/Blue_Pill_(software)

https://www.infoq.cn/article/virtualization-based-security-part01
https://learn.microsoft.com/zh-cn/windows-hardware/design/device-experiences/oem-vbs



本文遵守以”署名-非商业性使用-禁止演绎 4.0 国际“发布。https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh-hans



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 5人气 +13 收起 理由
chx818 + 2 精品文章
Picca + 2 版区有你更精彩: )
喀反 + 3 版区有你更精彩: )
Baby小尧 + 3 精品文章
隔山打空气 + 3

查看全部评分

AlphaRabbit
头像被屏蔽
 楼主| 发表于 2023-11-27 23:16:27 | 显示全部楼层
提示: 该帖被管理员或版主屏蔽
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-22 03:14 , Processed in 0.150708 second(s), 19 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表