最新消息: 预先成其事必先利其器

“内存完整性”打开后蓝屏或提示驱动不兼容:先查驱动再决定要不要关

2 浏览 内核隔离 驱动兼容 蓝屏

Windows 安全中心里的“内存完整性”是个很容易让人误处理的开关:一开就蓝屏,于是直接关掉;或者完全不碰,以为开了就万无一失。它的逻辑其实很简单:强制所有驱动满足内存保护要求,不合规的直接不让加载。代价就体现在这里。

它拦什么、不拦什么

它拦什么 它不拦什么
驱动在内核里利用内存错误执行代码 用户态的普通木马,那是杀毒软件的事
不符合内存保护要求的老驱动加载 性能问题,它的开销只有几个百分点
已知漏洞利用链里“从驱动往上爬”那一步 你主动给程序管理员权限这件事

一句话:它防的是内核层面的利用,不是防你点错东西。所以它开了不等于可以放松别的习惯。

为什么一开就出问题

打开后的表现 常见元凶 怎么定位
一开就蓝屏重启 显卡、声卡、旧外设与虚拟化相关驱动 蓝屏终止代码里的文件名,或安全中心列出的驱动
开了之后某个设备不能用 银行安盾控件、老打印机扫描驱动、某些采集卡 看它列出的不受支持驱动名
什么都没发生 驱动都兼容 保持打开就行

正确的处理顺序:先查驱动,后谈开关

# 当前是否开启:1 为开,0 或找不到项为关
Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity' -Name Enabled

# 列出机器上所有第三方驱动包,拿安全中心给的文件名到里面对
pnputil /enum-drivers | Select-String 'Published Name', 'Provider Name', 'Driver Version'

拿到驱动名后分三种处理。一是能找到新版:装厂商提供的最新驱动,重新打开开关。二是设备已经停产、没有新驱动:先把这个设备的驱动卸掉再试,能确认就是它。三是公司或业务必须用:把它归到一台单独的不敏感机器上用,不要为了它把主力机的那层关掉。

中间插一句安全提醒:不要为了让某个旧软件跑起来而直接关掉内核隔离后就不管了。它是驱动漏洞利用的最后一道屏障,而旧驱动带已知漏洞这件事本身不会因为你好用就消失。

真的必须关:把补偿做上

关掉后至少补三件事:系统和所有软件保持更新,因为旧驱动带漏洞时,上层补不上只能靠时间;浏览器和常用软件不用管理员身份跑,降低从用户态进内核的机会;驱动只从厂商官网或 Windows 更新安装,不再用“驱动精灵”类一键包,它们恰恰是不兼容驱动的常见来源。

顺手区分两项容易误动的设置

容易误动的两项 在哪里 建议
已知高危驱动阻止列表 不需要你设,随系统更新生效 保持更新就行,它和内存完整性是两套机制
临时禁用驱动程序强制签名 高级启动选项里 只在装老驱动那一次用,重启自动恢复;不要当成永久方案

第二项很多教程会教你“进高级启动禁用签名强制”来装老驱动。它能装上是因为你绕过了校验,不是因为这个驱动变得安全了。装完发现内核隔离仍然报错,就说明这条路走不通。

该不该关:分四种人

你的情况 建议 原因
近三年的新机器,没有老外设 保持打开 兼容驱动都在,没有理由关
必须用十年前的打印机或安盾 先更新驱动与控件;确实不行再关 一个驱动就能把防护拉回十年前的水平
打游戏,反作弊报错 按它的提示更新显卡驱动,不要先关 多数反作弊与现代内核隔离兼容
不记得自己开没开 查一下,开着就别动 关掉不会让你变快,只会少一层

最后一句

遇到蓝屏就关,是最便宜但不对的做法。先看安全中心报的是哪个驱动,能换就换、能删就删;实在要保留旧设备,再考虑关,并且把补偿措施补上。顺序反过来的代价,通常要等到下次驱动漏洞爆发才看得见。