Ошибка RDP подключения: CredSSP encryption oracle remediation

После установки последних обновлений безопасности, вышедших 8 мая 2018 года, на Windows 10 и 7, пользователи стали жаловаться, что при попытке подключится к RemoteApp на RDS серверах под Windows Server 2016 / 2012 R2 / 2008 R2, или удаленным рабочим столам других пользователей по протоколу RDP (на Win 10/8/7), появляется ошибка CredSSP:

Remote Desktop connection
An authentication error has occurred.
The function requested is not supported.
Remote Computer: hostname
This could be due to CredSSP encryption oracle remediation.

Ошибка подключения CredSSP

Подключение к удаленному рабочему столу
Произошла ошибка при проверке подлинности.
Указанная функция не поддерживается.
Причиной ошибки может быть исправление шифрования CredSSP.

 

Данная ошибка связана с тем, что на Windows Server или обычных десктопных версиях Windows, к котором вы пытаетесь подключится по RDP, с марта 2018 года не устанавливались обновления безопасности. Дело в том, что еще в марте 2018 Microsoft выпустила обновление, закрывающее возможность удаленного выполнения кода с помощью уязвимости в протоколе CredSSP (бюллетень CVE-2018-0886). В мае 2018 было опубликовано дополнительное обновление, в котором по-умолчанию клиентам запрещается подключаться к удаленным RDP серверам с уязвимой (непропатченной) версией протокола CredSSP.

Таким образом, если вы не устанавливали накопительные обновления безопасности на RDS серверах Windows с марта этого года, а клиенты (Win 10 / 8 / 7) установили майские обновления, то на них при попытке подключится к RDS серверам с непропатченной версией CredSSP будет появляется ошибка о невозможности подключения: This could be due to CredSSP encryption oracle remediation.

Ошибка RDP клиента появляется после установки следующих обновлений безопасности:

  • Windows 7 / Windows Server 2008 R2 — KB4103718

  • Windows 8.1 / Windows Server 2012 R2 — KB4103725

  • Windows Server 2016 — KB4103723

  • Windows 10 1803 — KB4103721

  • Windows 10 1709 — KB4103727

  • Windows 10 1703 — KB4103731

  • Windows 10 1609 — KB4103723

Для восстановления удаленного подключения к рабочему столу можно удалить указанное обновление, но это не рекомендуется и делать этого не стоит, есть более правильное решение.

Для решения проблемы необходимо временно на компьютере, с которого вы подключаетесь по RDP, убрать данное уведомление безопасности, блокирующее подключение.

Это можно сделать через редактор локальных групповых политик. Для этого:

Запустите редактор локальных GPO:

1
gpedit.msc

Перейдите в раздел Computer Configuration -> Administrative Templates -> System -> Credentials Delegation (Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных)

Групповая политика

Далее найдите политику с именем Encryption Oracle Remediation (Исправление уязвимости шифрующего оракула). Включите политику (Enabled/ Включено), а параметр в выпадающем списке выберите Vulnerable / Оставить уязвимость;

Исправление уязвимости шифрующего оракла

Осталось обновить политики на компьютере команда:

1
gpupdate /force

и попробовать подключится по RDP. При включенной политике клиентские приложения с поддержкой CredSSP смогут подключаться даже к непропатченным RDS серверам.

В том случае, если у вас отсутствует редактор локальных GPO, например в Home редакциях Windows, вы можете внести изменение, разрешающее RDP подключение к серверам с непропатченной версией CredSSP, напрямую в реестр. С помощью команды:

1
2
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters
/v AllowEncryptionOracle /t REG_DWORD /d 2

Ключ реестра шифрующего оракула

Кроме этого, можно внести изменения сразу на множестве компьютеров в AD с помощью доменной GPO или такого PowerShell скрипта. Список компьютеров в домене можно получить с помощью командлета Get-ADComputer:

1
2
3
4
5
6
7
8
9
10
Import-Module
ActiveDirectory
$PSs = (Get-ADComputer -Filter
*).DNSHostName
Foreach ($computer in $PCs) {
Invoke-Command
-ComputerName $computer -ScriptBlock {
REG ADD
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters
/v AllowEncryptionOracle /t REG_DWORD /d 2 } }

После успешного подключения к удаленному RDP серверу (компьютеру) нужно установить на нем отсутствующие обновления безопасности. Через службу Windows Update (проверьте, что служба включена) или вручную. Ниже представлены прямые ссылки на обновления для Windows Server, которые обязательно нужно установить:

  • Windows Server 2012 R2 / Windows 8: KB4103715

  • Windows Server 2008 R2 / Windows 7: KB4103712

  • Windows Server 2016 / Windows 10 1607:  KB4103723

После установки обновлений и перезагрузки сервера, не забудьте отключить политику на клиентах. Либо выставить ее на Force Updated Clients), или вернуть значение 0 у ключа реестра AllowEncryptionOracle. Таким образом, Ваш компьютер не будет подвержен риску подключения к незащищенным хостам с CredSSP и эксплуатации уязвимости.

1
2
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters
/v AllowEncryptionOracle /t REG_DWORD /d 0

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *