HOWTO: 禁用自动驱动程序更新
HOWTO: 禁用自动驱动程序更新
微软和 OEM 厂商不断在完善和简化系统设备驱动的更新机制,过去我们都要定期检查厂商的驱动网站或专用工具来更新设备的驱动程序,在国内还有很多第三方的驱动安装工具,但在一定程度上都存在很大的问题。在 Windows 10 和 Windows 11 上我们已经能够从 Windows Update 获取设备的稳定版驱动或用来更新到最新版本,相当便利!但是也有一些比较特殊的情况,例如 gOxiA 的 ThinkStation 由于从 Windows Update 获取的 UEFI Firmware 总发生更新后异常启动的问题,或者一些企业 IT 希望自己管理驱动更新,此时就需要禁用自动驱动程序更新。
下来,我们来看看在 Windows 10/11 上有哪些方案可以实现我们的需求。
1. 通过“系统属性”,它是传统的 Windows 控制面板选项,我们可以通过搜索“Sysdm.cpl”或“高级系统设置”来打开它。打开系统属性后,切换到“硬件”选项卡,点击“设备安装设置”,然后选择“否”并保存更改。
2. 通过注册表,我们可以打开注册表编辑器(regedit),定位至:
“HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching”
将“SearchOrderConfig”的 REG_DWORD 值改为 “0”
3. 对于企业 IT,可以通过 GPO 下发策略。其位于“计算机配置-管理模板-Windows组件-Windows更新-管理从Windows更新提供的更新”,启用“Windows更新不包括驱动程序”。
正如 gOxiA 前面介绍的,利用 Windows Update 我们能够很方便的获取安全可靠的驱动程序,而无需担心第三方源带来的问题,除非遇到特殊的情况,否则我们应当积极充分利用 Windows Update 来实施更新,包括驱动程序更新。
Windows 启动过程的保护技术
Windows 启动过程的保护技术
“安全”是这些年最热门的话题之一,Windows 操作系统也在不断完善和增强自己的安全性,我们看到了显著的成果。今天 gOxiA 来分享一些关于 Windows 启动过程的保护技术。
对于Windows启动过程所面临的威胁恐怕当属Rootkits,作为恶意软件的一部分,它可在内核模式下运行,将拥有与操作系统相同的权限,并且先于操作系统启动,可想而知它的威力、自身隐藏和防御机制有多强大。
Rootkits可以在启动过程的不同阶段加载不同类型的Rootkit:
- Firmware rootkits,可覆盖PC的I/O系统或其他硬件固件,从而可先于Windows启动。
- Bootkits,可取代操作系统的引导加载程序,也可实现在操作系统之前加载。
- Kernel rootkits,可取代操作系统内核的一部分,因此可随Windows加载时自启动。
- Driver rootkits,将伪装成Windows用于与硬件通信的受信任驱动程序的一部分。
Windows 目前支持四项功能,以帮助防止在启动过程中加载 Rootkit 和 Bootkit。
- Secure Boot,即“安全启动”通过将具有 UEFI 和 TPM 的电脑配置为仅加载受信任的操作系统启动加载程序。我们知道当 PC 启动时会首先寻找操作系统的引导加载程序,也就是我们常说的启动程序,没有安全启动的 PC 将无法判断它是受信任的操作系统还是 Rootkit,将会运行硬盘上的任何可引导加载程序。如果 PC 配备了 UEFI,当它启动时首先验证固件是否已进行数字签名,如果启用了安全启动,固件将检查启动加载程序的数字签名,确保其没有被篡改,如果引导加载程序完好无损,则仅当满足下列条件之一时,固件才会启动引导加载程序。
a. 引导加载程序是使用受信任的证书签名。对于经过 Windows 认证的电脑,Microsoft 证书是受信任的。
b. 用户已手动批准了引导加载程序的数字签名。此操作允许加载非 Microsoft 操作系统。 - Trusted Boot,即“受信任启动”Windows 在加载启动过程的每个组件之前进行完整性检查。在实际过程中,受信任启动将接管安全启动结束的位置。引导加载程序在加载之前验证 Windows 内核的数字签名。反过来,Windows 内核会验证其启动过程的所有其他组件,这包括了驱动程序、启动文件和 ELAM。如果文件被篡改,引导加载程序会检测到问题并拒绝加载损坏的组件。通常,Windows 可以自动修复损坏的组件,恢复 Windows 的完整性并允许 PC 正常启动。
- Early Launch Anti-Malware (ELAM),即“提前启动反恶意软件”在加载驱动程序之前进行扫描测试,防止加载未经批准的驱动程序。前面讲到安全启动保护了引导加载程序,而受信任启动保护了 Windows 内核,那下一个被恶意软件盯上的机会便是感染那些非 Microsoft 启动驱动程序。传统的防病毒软件在加载启动驱动程序后才会启动,这为伪装成驱动程序的 Rootkit 提供了机会。而提前启动反恶意软件(ELAM)可在所有非 Microsoft 启动驱动程序和应用程序之前加载微软或非微软的防病毒驱动程序,从而形成安全启动和受信任启动后的信任链。由于操作系统还没有启动,并且 Windows 需要尽快启动,因此 ELAM 有一个简单的任务:检查每个启动驱动程序并确定它是否在受信任的驱动程序列表中。如果它不受信任,Windows 将不会加载。ELAM 驱动程序并不是一个功能齐全的防病毒软件解决方案,我们熟知的 Windows Defender 就支持 ELAM。
- Measured Boot,即“度量启动”将记录每一次的启动过程,与之前受信任的启动数据进行比对,客观评估电脑运行状况。该项技术旨在防范那些看起来很健康,但其实已经感染了 Rootkit 的 PC 。这些 PC 可能正在运行防病毒软件,但其实已经感染了恶意程序。度量启动技术可以用来验证 Windows 启动过程的完整性,它会使用如下过程:
1) PC 的 UEFI 固件在 TPM 中存储固件、引导加载程序、启动驱动程序的哈希值,以及将在防病毒软件应用之前加载的所有内容。
2) 在启动过程结束时,Windows 将启动非 Microsoft 远程证明客户端。受信任的证明服务器向客户端发送唯一密钥。
3) TPM 使用唯一密钥对 UEFI 记录的日志进行数字签名。
4) 客户端将日志发送到服务器,其中还会包含其他安全信息。
根据实际运行数据和配置数据,我们可以确定客户端是否在正常运行。
综上,Windows 现行提供的启动保护技术创建了一个从根本上抵御 Rootkit 的体系结构。确保了 Windows 安全。参考文档:Secure the Windows boot process | Microsoft Docs
Windows on ARM 在企业中的可行性见解
Windows on ARM 在企业中的可行性见解
Windows ARM 已经面世一段时间,但大家貌似并没有积极的追捧,特请不高,可能除了对性能表现有一些担忧外更多的是考虑系统和软件的兼容性了。但不可否则 Windows ARM 也有其先天的优势特性:
- 始终连接到互联网,通过蜂窝移动数据连接,可以在任何获得蜂窝移动网络信号的地方联网在线,就像用手机一样。(PS:虽然 x86 架构的设备也有 LTE 或者 5G 的支持,但对于调制解调器这块恐怕还是高通的最为强劲和稳定了。)
- 电池续航时间超过一整天,就像手机一样 ARM 架构的硬件貌似具有天然的优势,非常省电。相对于传统 PC 笔记本的 4~6 小时,ARM 显得更具竞争力。
- 立即开启,ARM 的架构使其电源管理相对于 x86 更加有效,可以在电脑上实现像手机那样按电源按钮即可开关屏幕,而无需等待。虽然 Windows 为 x86 设计了快速启动和Modern Standby,但兼容性和稳定性还是无法避免的。
此外, ARM 的 Windows 设备也更加小巧,成本更低廉。现在 Windows 11 ARM 上还提供了 x64 的支持,这也意味着它可以运行更广泛的应用程序。如果您所在的企业正打算尝试部署 ARM 来取代那些陈旧老式的 Windows PC,那么以下内容可能会有帮助。
Windows on ARM 存在一些限制:
- 硬件、游戏和应用的驱动程序只有专为基于 Windows ARM 的电脑设计时才有效。这意味着如果您连接了非 Windows PnP 的外设,将无法正常使用他们,这些外设可能是:打印机、摄像头等等。
- 某些游戏将无法运行,虽然大部分企业并不会允许它的员工运行游戏,但我们需要注意如果游戏或应用使用大于3.3的OpenGL版本,则他们将无法正常工作。
- 虽然支持模拟 x86 和 x64,但仍旧会出现应用程序不兼容的情况,他们可能是输入法、云存储应用或某些辅助技术应用。此外不要忽视第三方的防病毒软件,除非他们支持 Windows ARM。
当前能给出的最佳建议:
- 尽可能的选择基于 ARM 开发的应用程序。(PS:目前已经有很多知名的应用提供了 ARM 版,比如 VLC 一款视频播放器,还有我们熟知的 Edge 浏览器,以及常用 Teams……等等)
- 在操作系统安装方面,由于微软目前仅面向 Insider 发布有 ISO 格式的 Windows Setup,所以如果我们需要部署那些 RTM 版本,则需要从现有的 ARM 设备中将系统备份出来。如果您是一位桌面标准化的 IT,会知道 Windows ADK,它会提供 ARM 版的 PE。
- 在系统部署方面,既然有了 PE,也是可以实现自动化甚至批量部署的,此外更为推荐的是采用动态部署或现代部署方案,例如 PPKG,或使用 Intune。
- 对于 Windows 管理,建议通过 Intune,除了可以下发系统策略,还可以推送软件和脚本。
- 对于 Windows 服务,除了现有的 WSUS 可以确保 ARM 系统状态保持最新,建议使用 Intune 的 Windows Update for Business。
- 排错方面,感谢 Mark Russinovich 提供了 Sysinternals 的 ARM 版本。