今天小编分享的科技经验:微软 2 月Win11 更新阻止軟體/系統資料庫方式修改默认网络浏览器,欢迎阅读。
IT 之家 4 月 8 日消息,微软今年 2 月面向 Windows 10 用户推送 KB5034763 更新、面向 Windows 11 用户推送 KB5034765 更新,其中一项调整是阻止用户使用軟體或者修改系統資料庫方式,配置系统的默认浏览器。
IT 之家 3 月 26 日已经报道过这个问题,现在关于这个问题的更多细节被披露。IT 顾问 Christoph Kolbicz 率先发现微软的这项调整,安装 2 月更新之后导致其 SetUserFTA 和 SetDefaultBrowser 程式无法正常使用。
SetUserFTA 是一个命令行程式,可让 Windows 管理员通过登录脚本和其他方法更改檔案关联;SetDefaultBrowser 的工作原理类似,但只能用于更改 Windows 中的默认浏览器。
背景介绍
微软自 Windows 8 系统开始就引入了新的安全机制,为了防止恶意軟體和恶意脚本篡改,将檔案扩展名、URL 協定与默认程式关联起来。
微软的这一新机制,将檔案扩展名或 URL 協定关联,存储在 UserChoice 系統資料庫键值下。
例如,分配给 HTTPS URL 協定的默认网络浏览器的路径如下:
Windows Registry Editor Version 5.00 [ HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsShellAssociationsUrlAssociationshttpsUserChoice ] "ProgId"="ChromeHTML" "Hash"="N3eikAB1HhI="
如果未使用正确的哈希值,Windows 将忽略系統資料庫值,并使用该 URL 協定的默认程式,即 Microsoft Edge。
Kolbicz 逆向设计了这种 Hashing 算法,创建了 SetUserFTA 和 SetDefaultBrowser 程式来更改默认程式。
2 月新调整
不过 Windows 10 和 Windows 11 系统安装 2 月更新之后,Kolbicz 注意到这些系統資料庫键值现在已被锁定,在 Windows 設定之外修改时会出现错误。
例如,使用 Windows 系統資料庫编辑器修改这些設定时会出现错误,提示 " 无法编辑哈希值:错误写入值的新内容 "。
经过进一步研究,Kolbicz 发现微软在二月份的更新中引入了一个新的 Windows 过滤驱动程式(c:windowssystem32driversUCPD.sys)。
该驱动程式被称为 " 用户选择保护驱动程式 ",加载后可防止直接编辑与 HTTP 和 HTTPS URL 关联以及 .PDF 檔案关联相关的系統資料庫键值。
相关的系統資料庫键值是:
HKCUSoftwareMicrosoftWindowsShellAssociationsUrlAssociationshttpUserChoice HKCUSoftwareMicrosoftWindowsShellAssociationsUrlAssociationshttpsUserChoice HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerFileExtspdfUserChoice
临时修改方案
Kolbicz 在一篇博文中解释说,虽然不能解除安裝驱动程式,但可以在系統資料庫中禁用它。
该驱动程式固然无法解除安裝,但可以禁用!
在以管理员权限打开的 PowerShell 視窗下,输入以下命令,然后重启生效:
New-ItemProperty -Path "HKLMSYSTEMCurrentControlSetServicesUCPD" -Name "Start" -Value 4 -PropertyType DWORD -Force
这就恢复了 SetUserFTA 的功能,但遗憾的是需要管理权限和重启。
Gunnar Haslinger 在一篇博文中解释说,在 MicrosoftWindowsAppxDeploymentClient 下新创建的 "UCPD velocity" 计划任务会在服务禁用时自动重新启用。
因此,禁用驱动程式的唯一方法是通过系統資料庫关闭它,并删除 / 禁用计划任务。
参考