Windscribe发布的开源PowerShell脚本deGDID,可永久移除并阻止Windows系统中微软全局设备标识符(GDID)的生成。GDID是服务器端分配的持久性设备级标识符,用于跨微软服务关联同一Windows安装的活动,且无法通过系统设置手动禁用或重置。
该工具通过修改hosts文件与防火墙规则阻断微软注册端点,并清除本地存储的GDID相关状态(含用户/SYSTEM/DEFAULT配置、令牌、凭据缓存等),无需修改系统文件。支持所有Windows 11版本(21H2–25H2)及Windows 10 22H2,提供只读检查、隐私编辑输出、保护启用及一键撤销功能。重要提示:禁用GDID可能影响依赖设备识别的微软服务(如个性化、诊断、账户同步),虽测试未发现问题,但边缘情况风险存在;工具仅阻止未来标识符生成,无法删除微软已关联的历史记录。
- GitHub:https://github.com/yegors/deGDID
- 网盘:https://pan.quark.cn/s/f37af0af7854

GDID的本质与deGDID的作用边界
GDID是什么
- 服务器生成的持久标识符,绑定到Windows安装实例(非硬件序列号或计算机名)
- 在微软服务中保持一致,用于关联遥测、许可、个性化等活动
- 即使使用本地账户、重装系统(未格式化)、切换用户,仍可能重新生成
- 无官方禁用选项,删除注册表项后Windows会自动从云端重新获取
deGDID能做什么
- ✅ 清除本地已知GDID存储位置(用户配置、SYSTEM、TokenBroker、WAM代理、ConnectedDevicesPlatform等)
- ✅ 通过hosts + 防火墙双重阻断微软GDID注册端点,防止重新生成
- ✅ 开源可审计,不修改系统二进制文件
- ✅ 支持完整撤销(
-Unprotect),恢复原始状态
deGDID不能做什么
- ❌ 删除微软服务器上已与该设备关联的历史数据
- ❌ 阻止所有形式的设备指纹(如硬件ID、IP、浏览器指纹仍独立存在)
- ❌ 保证所有微软服务100%正常运行(边缘案例未全覆盖)
- ❌ 适用于Windows 10 <22H2 或 Windows Server 版本
部署流程与安全操作规范
前置准备
- 以管理员身份运行PowerShell
- 从GitHub仓库下载
degdid.ps1 - 建议先创建系统还原点作为额外保险
核心命令
# 只读检查当前GDID状态(不修改系统)
.\degdid.ps1 -Status
# 检查并编辑敏感信息后再分享日志
.\degdid.ps1 -Status -Redact
# 启用保护:阻断端点 → 验证阻断 → 清除本地状态 → 等待 → 重新盘点 → 报告
.\degdid.ps1 -Protect
# 完全撤销所有更改
.\degdid.ps1 -Unprotect
执行逻辑详解(-Protect)
- 阻断阶段:向hosts添加微软GDID注册域名条目,并创建对应防火墙出站阻止规则
- 验证阶段:尝试连接被阻断端点,确认阻断生效
- 清除阶段:遍历预定义路径删除GDID相关注册表值、缓存文件、令牌
- 等待阶段:暂停让系统释放句柄、完成异步清理
- 盘点阶段:重新扫描确认清除彻底,生成结果报告
关键安全特性
- 非破坏性:仅操作已知GDID相关键值/文件,不涉及系统核心组件
- 可逆性:
-Unprotect精确回滚所有hosts、防火墙、注册表变更 - 透明性:开源代码可逐行审查;
-Redact模式自动掩码设备特定信息便于安全分享 - 最小权限:仅需管理员权限执行脚本,无需持续后台驻留














0条评论