AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 911590
Accepted
scott_lotus
scott_lotus
Asked: 2018-05-11 00:40:09 +0800 CST2018-05-11 00:40:09 +0800 CST 2018-05-11 00:40:09 +0800 CST

这可能是由于 CredSSP 加密 oracle 修复 - RDP 到 Windows 10 pro 主机

  • 772

错误

在 2018 年 5 月的 Windows 安全更新之后,当尝试 RDP 到 Windows 10 Pro 工作站时,在成功输入用户凭据后显示以下错误消息:

发生身份验证错误。不支持请求的功能。

这可能是由于 CredSSP 加密 oracle 修复

截屏

在此处输入图像描述

调试

  • 我们已确认用户凭据是正确的。

  • 重新启动工作站。

  • 确认本地目录服务正常运行。

  • 尚未应用 May 安全补丁的隔离工作站不受影响。

可以临时管理永久主机,但关注基于云的服务器访问。Server 2016 上还没有出现。

谢谢

windows
  • 14 14 个回答
  • 100966 Views

14 个回答

  • Voted
  1. Rodriguez
    2018-05-11T07:05:49+08:002018-05-11T07:05:49+08:00

    完全基于Graham Cuthbert 的回复,我在记事本中创建了一个带有以下行的文本文件,然后双击它(它应该将文件中的任何参数添加到 Windows 注册表)。

    请注意,第一行因您使用的 Windows 版本而异,因此打开regedit和导出任何规则以查看第一行中的内容并在文件中使用相同版本可能是个好主意。

    此外,我不担心在这种特殊情况下会降低安全性,因为我正在连接到加密的 VPN,并且主机 Windows 无法访问互联网,因此没有最新的更新。

    文件rd_patch.reg:

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP]
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters]
    "AllowEncryptionOracle"=dword:00000002
    

    对于那些想要轻松复制/粘贴到提升的命令提示符中的人:

    reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters /v AllowEncryptionOracle /t REG_DWORD /d 2 /f
    
    • 22
  2. Michal Sokolowski
    2018-05-11T01:21:06+08:002018-05-11T01:21:06+08:00

    凭据安全支持提供程序协议 (CredSSP) 是一种身份验证提供程序,用于处理其他应用程序的身份验证请求。

    未修补的 CredSSP 版本中存在远程执行代码漏洞。成功利用此漏洞的攻击者可以中继用户凭据以在目标系统上执行代码。任何依赖 CredSSP 进行身份验证的应用程序都可能容易受到此类攻击。

    [...]

    2018 年 3 月 13 日

    2018 年 3 月 13 日的初始版本更新了所有受影响平台的 CredSSP 身份验证协议和远程桌面客户端。

    缓解措施包括在所有符合条件的客户端和服务器操作系统上安装更新,然后使用包含的组策略设置或基于注册表的等效项来管理客户端和服务器计算机上的设置选项。我们建议管理员尽快在客户端和服务器计算机上应用该策略并将其设置为“强制更新客户端”或“缓解”。这些更改将需要重新启动受影响的系统。

    请密切注意在本文后面的兼容性表中导致客户端和服务器之间“阻止”交互的组策略或注册表设置对。

    2018 年 4 月 17 日

    KB 4093120 中的远程桌面客户端 (RDP) 更新将增强当更新的客户端无法连接到尚未更新的服务器时显示的错误消息。

    2018 年 5 月 8 日

    将默认设置从易受攻击更改为已缓解的更新。

    资料来源: https: //support.microsoft.com/en-us/help/4093492/credssp-updates-for-cve-2018-0886-march-13-2018 [1]

    另请参阅此 reddit 线程: https ://www.reddit.com/r/sysadmin/comments/8i4coq/kb4103727_breaks_remote_desktop_connections_over/ [2]

    微软的解决方法:

    • 更新服务器和客户端。(需要重启,推荐)

    如果您的服务器是公开可用的,或者如果您在内部网络中没有严格的流量控制,则不推荐使用解决方法,但有时在工作时间重新启动 RDP 服务器是不行的。

    • 通过 GPO 或注册表设置 CredSSP 修补策略。(需要重新启动或 gpupdate /force)
    • 卸载 KB4103727(无需重新启动)
    • 我认为禁用 NLA(网络层身份验证)也可能有效。(无需重启)

    请务必了解使用它们时的风险并尽快修补您的系统。

    [1] 此处描述了所有 GPO CredSSP 描述和注册表修改。

    [2] 微软网站出现故障时的 GPO 和注册表设置示例。

    • 16
  3. Mohammad Lotfi
    2018-05-13T21:34:56+08:002018-05-13T21:34:56+08:00
    1. 转到“本地组策略编辑器 > 管理模板 > 系统 > 凭据委派 > 加密 Oracle 修复”,编辑并启用它,然后将“保护级别”设置为“缓解”。
    2. 设置注册密钥(从 00000001 到 00000002)[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters] "AllowEncryptionOracle"=dword:
    3. 如果需要,重新启动系统。
    • 7
  4. Best Answer
    scott_lotus
    2018-05-11T01:21:33+08:002018-05-11T01:21:33+08:00

    研究

    参考这篇文章:

    https://blogs.technet.microsoft.com/askpfeplat/2018/05/07/credssp-rdp-and-raven/

    2018 年 5 月的暂定更新,可能会影响在组织内建立远程主机 RDP 会话连接的能力。如果本地客户端和远程主机在定义如何使用 CredSSP 构建 RDP 会话的注册表中具有不同的“加密 Oracle 修复”设置,则可能会出现此问题。“加密 Oracle 修复”设置选项定义如下,如果服务器或客户端对建立安全 RDP 会话有不同的期望,则可能会阻止连接。

    暂定于 2018 年 5 月 8 日发布的第二次更新会将默认行为从“易受攻击”更改为“缓解”。

    如果您注意到客户端和服务器是否都打了补丁,但默认策略设置保留为“易受攻击”,则 RDP 连接“易受攻击”。将默认设置修改为“缓解”后,默认连接将变为“安全”。

    解析度

    根据此信息,我将继续确保所有客户端都已完全修补,然后我希望该问题得到缓解。

    • 4
  5. Ion Cojocaru
    2018-05-15T04:12:26+08:002018-05-15T04:12:26+08:00

    我的 Windows 10 机器上没有注册表值。我必须转到以下本地组策略并将更改应用于我的客户端:

    计算机配置 -> 管理模板 -> 系统 -> 凭据委派--加密 Oracle 修复

    启用并设置为vulnerable.

    • 4
  6. Ahmad Behzadi
    2018-07-09T09:46:56+08:002018-07-09T09:46:56+08:00

    建议更新客户端而不是此类脚本以绕过错误,但您可以在客户端上执行此操作,无需重新启动客户端 PC,风险自负。也无需更改服务器上的任何内容。

    1. 打开Run,键入gpedit.msc并单击OK。
    2. 展开Administrative Templates。
    3. 展开System。
    4. 打开Credentials Delegation.
    5. 在右侧面板上双击Encryption Oracle Remediation。
    6. 选择Enable。
    7. Vulnerable从Protection Level列表中选择。

    此策略设置适用于使用 CredSSP 组件的应用程序(例如:远程桌面连接)。

    某些版本的 CredSSP 协议容易受到针对客户端的加密预言机攻击。此策略控制与易受攻击的客户端和服务器的兼容性。此策略允许您设置加密预言机漏洞所需的保护级别。

    如果启用此策略设置,将根据以下选项选择 CredSSP 版本支持:

    强制更新客户端:使用 CredSSP 的客户端应用程序将无法回退到不安全的版本,使用 CredSSP 的服务将不接受未修补的客户端。注意:在所有远程主机都支持最新版本之前,不应部署此设置。

    缓解:使用 CredSSP 的客户端应用程序将无法回退到不安全版本,但使用 CredSSP 的服务将接受未修补的客户端。有关剩余未打补丁的客户所带来的风险的重要信息,请参阅下面的链接。

    易受攻击:使用 CredSSP 的客户端应用程序将通过支持回退到不安全的版本将远程服务器暴露于攻击,使用 CredSSP 的服务将接受未修补的客户端。

    1. 单击应用。
    2. 单击确定。
    3. 完毕。

    在此处输入图像描述 参考

    • 3
  7. Mohamad Mahmoud Darwish
    2018-05-23T03:19:14+08:002018-05-23T03:19:14+08:00

    简单地说,尝试Network Level Authentication从远程桌面禁用。请您检查以下图片:

    在此处输入图像描述

    • 2
  8. Graham Cuthbert
    2018-05-11T01:17:08+08:002018-05-11T01:17:08+08:00

    我在这里找到了答案,所以不能声称它是我自己的,但是将以下键添加到我的注册表并重新启动为我修复了它。

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters]
    "AllowEncryptionOracle"=dword:00000002
    
    • 0
  9. Justin
    2018-05-11T05:14:45+08:002018-05-11T05:14:45+08:00

    这家伙对您的确切问题有一个解决方案:

    本质上 - 您必须更改 GPO 设置并强制更新。但是这些更改需要重新启动才能生效。

    1. 从刚更新的机器上复制这两个文件;

      • C:\Windows\PolicyDefinitions\CredSsp.admx(Dtd 2018 年 2 月)
      • C:\Windows\PolicyDefinitions\en-US\CredSsp.adml(2018 年 2 月 Dtd - 您的本地文件夹可能不同,即 en-GB)
    2. 在 DC 上,导航至:

      • C:\Windows\SYSVOL\sysvol\<your domain>\Policies\PolicyDefinitions
      • 将当前重命名CredSsp.admx为CredSsp.admx.old
      • 将新的复制CredSsp.admx到此文件夹。
    3. 在同一个 DC 上导航到:

      • C:\Windows\SYSVOL\sysvol\<your domain>\Policies\PolicyDefinitions\en-US(或您的当地语言)
      • 将当前重命名CredSsp.adml为CredSsp.adml.old
      • 将新CredSsp.adml文件复制到此文件夹。
    4. 再次尝试您的组策略。

    https://www.petenetlive.com/KB/Article/0001433

    • 0
  10. rbrussell82
    2018-05-11T12:31:26+08:002018-05-11T12:31:26+08:00

    正如其他人所说,这是因为微软发布了 3 月份的补丁。他们在 5 月 8 日发布了 5 月补丁,实际上执行了 3 月补丁。因此,如果您的工作站收到了 5 月补丁,并且您尝试连接到尚未收到 3 月补丁的服务器,您将在屏幕截图中收到错误消息。

    解决方案 你真的想给服务器打补丁,以便它们有 3 月的补丁。否则,您可以同时应用组策略或注册表编辑。

    您可以阅读本文中的详细说明: 如何修复身份验证错误功能不支持 CredSSP 错误 RDP

    您还可以找到 ADMX 和 ADML 文件的副本,以备不时之需。

    • 0

相关问题

  • 知道任何适用于 Windows 的快速可编写脚本的 ftp 客户端吗?[关闭]

  • 如果 Windows 服务崩溃,如何自动重新启动它?

  • 无法安排任务(访问被拒绝)

  • 物理机重启时自动重启虚拟机(VMWare)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve