KB4103727:更新补丁造成远程桌面的错误

KB4103727:更新补丁造成远程桌面的错误

 

最近的win10更新后,打开远程桌面的连接时,遇到了以下错误。

这可能是由于CredSSP加密Oracle修正


 

解决方法一:卸载掉客户端的此更新包。但前提是远程电脑上没有安装此更新才可以,此更新包是同时更新服务器与客户端的,任何一端启用了此设置,都会产生此问题。而且此更新包更新后,该设置是默认启用的。

 

解决方法二:通过本地安全策略或注册表来修改此参数的配置

本地安全策略(gpedit.msc):计算机配置“->”管理模板“->”系统“->”凭据分配,这里面有个加密 Oracle 修正


注册表:HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters

新建一个 32 位的、DWORD 类型的 AllowEncryptionOracle,然后为其设置相应的值。


 

值的说明:

针对服务器端

  • 如果这个值是 0,那么要求客户端必须是修补了 CredSSP 的。
  • 如果这个值是 1,那么要求客户端可以是没修补 CredSSP 的。
  • 如果这个值是 2,那么要求客户端可以是没修补 CredSSP 的。(和 1 一样)

    2018 5 8 日,微软将这个默认值修改为了 1

    针对客户端

  • 如果这个值是 0,那么要求服务端必须是修补了 CredSSP 的。(和 1 一样)
  • 如果这个值是 1,那么要求服务端必须是修补了 CredSSP 的。
  • 如果这个值是 2,那么要求服务端可以是没修补 CredSSP 的。

    2018 5 8 日,微软将这个默认值修改为了 1

    也就是说:

  • 0:服务器端、客户端都必须是修补了 CredSSP 的。
  • 1:服务器端没要求客户端、但是客户端要求服务器端是修补了 CredSSP 的。

  • 2:服务器端、客户端都可以是没修补 CredSSP 的。

     

     

    此补丁的一点说明:

    远程桌面使用的是凭据安全支持提供程序协议 (CredSSP) “,这个协议在未修补的版本中是存在漏洞的。

    于是微软在 2018 3 13 日在补丁中解决了这个问题,但是默认并没有强制使用新的协议,因为一旦强制使用,假如服务器端和客户端不匹配,将无法连接。所以用户并不会感知到。

    2018 5 8 日,微软在补丁中将客户端策略提严了一点,mstsc 登录就会有提示了,就会出现如上的错误了,用户就会知道这事了。

    更进一步

    关于微软这次更新,有个配置,更改这个配置可以决定是使用以前的那种连接,还是修补过的连接。这个问题会影响到服务器端客户端
    ,所以这个配置在服务器端和客户端均可配置。