出现身份验证错误,要求的函数不受支持(这可能是由于CredSSP加密Oracle修正)

本文解决了一个特定的身份验证错误,该错误在Windows客户端更新后出现,影响了远程WinSer2012/16资源的访问。错误源于CredSSP更新,通过修改本地组策略设置为易受攻击状态来临时解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从5月8\9日开始客户端Win10\WinSer2016突然无法访问测试环境下所有远程Win Ser2012/16资源,提示"出现身份验证错误。要求的函数不受支持... 这可能是由于CredSSP加密Oracle修正..." Win7中英文版本分别提示"发生身份验证错误。要求的函数不受支持"或"An authentication error has occurred and the required function is not supported"

问题截图:

Win7报错截图:

具体信息:

远程桌面连接报错:

出现身份验证错误。要求的函数不受支持

远程计算机:*.*.*.*

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

要了解详细信息,请访问https://go.microsoft.com/fwlink/?linkid=866660

问题排查:

根据提示我们访问https://go.microsoft.com/fwlink/?linkid=866660

发现是因为CVE-2018-0886 的 CredSSP 更新导致该问题的发生。简单了解下CredSSP:

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

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

此安全更新通过更正CredSSP在身份验证过程中验证请求的方式来修复此漏洞。

解决方法:

修改本地组策略:

计算机配置>管理模板>系统>凭据分配>加密Oracle修正 选择启用并选择"易受攻击"。

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

English:

Group Policy ->Computer Configuration->Administrative Templates->System->Credentials Delegation>Encrypted Oracle Remediation change to Vulnerable

Vulnerable – Client applications that use CredSSP will expose the remote servers to attacks by supporting fallback to insecure versions, and services that use CredSSP will accept unpatched clients.

步骤如下:

1.打开本地组策略:

2.依次展开计算机配置>管理模板>系统>凭据分配>加密Oracle修正 ,启用加密Oracle修正并选择"易受攻击",单击确定完成设置。

3.配置选项如下:

补充:加密 Oracle 修复

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

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

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

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

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

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

参考链接:

https://support.microsoft.com/zh-cn/help/4093492/credssp-updates-for-cve-2018-0886-march-13-2018

https://support.microsoft.com/zh-cn/help/20180508/security-update-deployment-information-may-08-2018

https://thehackernews.com/2018/03/credssp-rdp-exploit.html

https://blog.preempt.com/security-advisory-credssp

http://www.freebuf.com/vuls/166537.html

当您遇到“身份验证错误,要求的函数不受支持”这一提示,并被告知这可能是由于 CredSSP 加密 Oracle 修正 (KB4103727) 导致的时候,通常是因为客户端和服务端之间的操作系统对于 CredSSP 协议的支持存在差异所引起的。这个问题常见于使用 Windows 远程桌面连接时。 ### 解决方案 #### 1. 更新所有涉及设备的操作系统 确保您的本地机器(即作为 RDP 客户端)以及远程服务器都已经安装了最新的累积更新补丁包,尤其是包含 KB4103727 或更高版本的安全修复程序。微软官方已经发布了针对此问题的一系列修补措施,可以有效避免因 CredSSP 漏洞而引发的身份验证失败情况发生。 #### 2. 修改注册表设置 (适用于无法立即升级的情况) 如果您暂时无法将某一方更新到最新状态,则可以通过调整注册表来兼容旧版CredSSP认证机制: - **注意**:编辑注册表有一定风险,请务必谨慎操作并做好备份。 ##### 对于较新的 Win10/Server 版本: - 打开 `regedit` 并导航至路径 `[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters]` - 新建名为 `AllowEncryptionOracle` 的字符串值(String Value),然后将其数值设为 `AlwaysOn`. ##### 对于较老的Win7 SP1及以上版本: - 添加同样的注册项位置下的DWORD类型的键,命名为 `AllowEncryptionOracle`, 数值也设成 `1`. 完成修改后重启计算机以应用更改。 --- ### 具体原因解释 CredSSP (Credential Security Support Provider Protocol)是用来保护凭据在网络上传输过程中免遭窃听的一种协议。随着网络安全威胁不断演变,微软加强了对这种潜在攻击手段防范力度,在某些情况下导致新旧系统之间互不识别对方采用何种级别的加密标准,进而造成所谓的“不受支持”的现象出现。 通过实施上述解决方案之一应该能够解决问题。不过建议尽量保持系统的及时更新,既可获得更好的安全性和稳定性保障又能减少此类麻烦的发生几率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值