在使用windows进行远程桌面时,出现以下报错:

远程桌面报错:由于CredSSP加密Oracle修正_远程连接

根据官方提供信息可知:此问题由Windows于2018年5月8日的更新所导致(CVE-2018-0886 的 CredSSP 更新)。此前已修复在CredSSP 的未修补版本中存在的远程代码执行漏洞,但在5月8日发布的更新中则将"加密Oracle修正"默认设置从“易受***”更改为“缓解”的更新。

因此在安装此更新后, 默认情况下已修补的客户端无法与未修补的服务进行通信,并弹出如上图的错误提示。

常见的解决方法:

1、针对已修补的客户端

通过组策略(较为便捷): 运行 gpedit.msc 本地组策略,选择"计算机配置">"管理模板">"系统">"凭据分配">"加密Oracle修正",选择"启用"并选择"易受***"即可。若组策略没有出现"加密Oracle修正",则说明此计算机尚未修补更新。

远程桌面报错:由于CredSSP加密Oracle修正_远程连接_02

通过注册表(针对无组策略功能的家庭版Windows:运行 regedit 注册表,跳转到路径:HKLM(缩写)\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters,若无相应表项则需自行创建,在Parameters项的右侧栏新建类型为 DWORD (32)位、名称为"AllowEncryptionOracle"的数据,最后重启计算机。

远程桌面报错:由于CredSSP加密Oracle修正_Windows_03

2、针对未修补的服务端

修改远程设置(不建议)运行 sysdm.cpl 系统属性,选择"远程",并"仅允许运行使用网络基本身份验证的远程桌面的计算机连接(建议)"去掉打勾。

远程桌面报错:由于CredSSP加密Oracle修正_CredSSP_04

安装更新补丁(推荐):网上提供的方法多为在客户端上修改组策略,但实际上这种方法降低了计算机的安全性,并不符合微软官方期望,不建议作长期设置。最佳的做法应该是在未修补的计算机上安装相应的安全更新包,特别是在企业服务器上可查询微软各操作系统于2018年5月8日的安全更新包进行下载和安装,以下列举常见系统版本对应的更新包,分别是:

Windows 10 1703版 —— KB4103731

Windows 8.1 和 Windows Server 2012 R2 —— KB4103715

Windows 7 SP1 和 Windows Server 2008 R2 SP1 —— KB4103712

客户端和服务器都需要更新,否则,Windows 和第三方 CredSSP 客户端可能无法连接到 Windows 或第三方主机。 有关导致操作失败的情况,请参阅以下的互操作性矩阵。

    CredSSP 协议                           服务端




未修补强制更新的客户端缓解易受攻击
未修补  允许
         阻止允许   允许
强制更新的客户端  阻止         允许允许   允许
缓解  阻止         允许允许   允许
易受攻击  允许         允许允许   允许



文章参考:

CVE-2018-0886 的 CredSSP 更新

Windows 官方补丁下载中心

KB4103731 - 2018年5月8日 - Windows 10 历史更新记录

Windows 8.1 和 Windows Server 2012 R2 更新历史记录