После обновления безопасности, которое было выпущено после мая 2018 года, при попытке подключиться к RDP серверу (удаленному рабочему столу) пользователи могут столкнуться с ошибкой CredSSP encryption oracle remediation. В каких случаях может возникнуть эта проблема:
- Вы подключаетесь к удаленному рабочему столу компьютера с недавно установленной старой (например, RTM) версией Windows (например, Windows 10 ниже билда 1803, Windows Server 2012 R2, Windows Server 2016), на котором не установлены последние обновления безопасности Windows;
- Вы пытаетесь подключиться к RDP компьютеру, на который давно не устанавливали обновления Microsoft;
- RDP подключение блокирует удаленный компьютер, т.к. нет нужных обновлений безопасности на вашем клиентском компьютере.
Видео по теме
Попробуем разобраться с тем, что означает RDP ошибка CredSSP encryption oracle remediation и как ее можно исправить.
Итак, при попытке подключения к приложению RemoteApp на RDS серверах под Windows Server 2016 / 2012 R2 / 2008 R2, или к удаленным рабочим столам других пользователей по протоколу RDP (на Windows 10, 8.1 или 7), появляется ошибка:
Remote Desktop connection
An authentication error has occurred.
The function is not supported.
Remote Computer: hostname
This could be due to CredSSP encryption oracle remediation.
Подключение к удаленному рабочему столу
Произошла ошибка при проверке подлинности.
Указанная функция не поддерживается.
Причиной ошибки может быть исправление шифрования CredSSP.
Данная ошибка связана с тем, что на Windows Server или на обычной десктопной версии Windows, к которой вы пытаетесь подключится по RDP, не устанавлены обновления безопасности Windows (как минимум с марта 2018 года).
В марте 2018 Microsoft выпустила обновление, закрывающее возможность удаленного выполнения кода с помощью уязвимости в протоколе CredSSP (Credential Security Support Provider). В мае 2018 было опубликовано дополнительное обновление, в котором по-умолчанию клиентам Windows запрещается подключаться к удаленным RDP серверам с уязвимой версией протокола CredSSP.
Таким образом, если вы на RDS/RDP серверах (компьютерах) Windows с марта 2018 года не устанавливались накопительные обновления безопасности, а на RDP клиентах установлены майские обновления (или более новые), то на них при попытке подключится к 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 подключение (но это крайне не рекомендуется, т.е. есть более безопасное и правильное решение).
Для решения проблемы вы можете временно на компьютере-клиенте, с которого вы подключаетесь по RDP, отключить проверку версии CredSSP на удаленном компьютере. Это можно сделать через редактор локальных групповых политик.
- Запустите редактор локальных GPO — gpedit.msc;
- Перейдите в раздел политик Computer Configuration -> Administrative Templates -> System -> Credentials Delegation (Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных);
- Найдите политику с именем Encryption Oracle Remediation (Исправление уязвимости шифрующего оракула). Включите политику (Enabled/ Включено), а в качестве параметра в выпадающем списке выберите Vulnerable / Оставить уязвимость;
- Осталось обновить политики на вашем компьютере (команда
gpupdate /force
) и попробовать подключится по RDP к удаленному компьютеру. При включенной политике Encryption Oracle Remediation со значением Vulnerable ваши терминальные приложения с поддержкой CredSSP смогут подключаться даже к RDS/RDP серверам и компьютерам Windows, на которых отсутствуют актуальные обновления безопасности.
Политика Encryption Oracle Remediation предлагает 3 доступных значения защиты от CredSSP уязвимости:
- Force Updated Clients — самый высокий уровень защиты, когда RDP сервер запрещает подключение не обновлённым клиентам. Обычно эту политику стоит включать после полного обновления всей инфраструктуры и интеграции актуальных обновлений безопасности в установочные образы Windows для серверов и рабочих станций;
- Mitigated – в этом режиме блокируется исходящее удаленное RDP подключение к RDP серверам с уязвимой версией CredSSP. Однако другие службы, использующие CredSSP работаю нормально;
- Vulnerable –самый низкий уровень зашиты, когда разрешается подключение к RDP сервера с уязвимой версией CredSSP.
Если у вас отсутствует редактор локальных GPO (например, в Home редакциях Windows), вы можете внести изменение, разрешающее RDP подключение к серверам с непропатченной версия CredSSP, напрямую в реестр с помощью команды:
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2
Вы можете изменить этот параметр в реестре сразу на множестве компьютеров в AD с помощью доменной GPO (консоль gpmc.msc) или таким PowerShell скриптом (список компьютеров в домене можно получить с помощью командлета Get-ADComputer из модуля >RSAT-AD-PowerShell):
Import-Module ActiveDirectory
$PSs = (Get-ADComputer -Filter *).DNSHostName
Foreach ($computer in $PCs) {
Invoke-Command -ComputerName $computer -ScriptBlock {
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2
}
}
После успешного подключения к удаленному RDP серверу (компьютеру) нужно установить на нем актуальные обновления безопасности через службу Windows Update (проверьте, что служба включена) или вручную. Скачайте и установите последние кумулятивные обновления Windows как показано выше.
Для Windows XP/ Windows Server 2003, которые сняты с поддержки нужно установить обновления для Windows Embedded POSReady 2009. Например, https://support.microsoft.com/en-us/help/4056564
После установки обновлений и перезагрузки сервера, не забудьте отключить политику на клиентах (либо выставить ее на Force Updated Clients), или вернуть значение 0 для ключа реестра AllowEncryptionOracle. В этом случае, ваш компьютер не будет подвержен риску подключения к незащищенным хостам с CredSSP и эксплуатации уязвимости.
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 0 /f
Есть еще один сценарий, когда обновления отсутствуют на вашем компьютере. Например, RDP сервер обновлен, но на нем выставлена политика, блокирующая RDP подключения с компьютеров с уязвимой версией CredSSP (Force Updated Clients). В этом случае при RDP подключении вы также увидите ошибку “This could be due to CredSSP encryption oracle remediation”.
Проверьте последнюю дату установки обновлений Windows на вашем компьютере с помощью модуля PSWindowsUpdate или через WMI команду в консоли PowerShell:
gwmi win32_quickfixengineering |sort installedon -desc
В этом примере видно, что последние обновления безопасности Windows устанавливалось 17 июня 2018 года. Скачайте и установите более новый MSU файл с кумулятивным обновлением для вашей редакции Windows (смотрите выше).
Некоторые пользователи, которые подключаются через удаленный доступ RDP в Windows 10/7, получают ошибку «Произошла ошибка проверки подлинности. Указанная функция не поддерживается» может быть комментарий, что «Причиной ошибки может быть исправление шифрования CredSPP«. Большинство пользователей столкнулись с этой ошибкой после обновления системы Windows 10/7. Дело в том, что Microsoft выпустила микро-патч для удаления уязвимости в RDP. По этому CredSPP должен быть обновлен на обоих ПК и всех устройствах, к которым вы пытаетесь подключиться удаленно. Другие сообщили, что в групповых политик сбросились значения. И лично я столкнулся с этой проблемой, и решил её редактированием реестра. Разберем основные решения, чтобы исправить ошибку проверки подлинности при подключении удаленного доступа RDP.
1. Снять ограничения
В большинстве случаев нужно всего-лишь снять галочку на проверку подлинности. Нажмите сочетание кнопок на клавиатуре Win+R и введите sysdm.cpl, чтобы открыть свойства системы. Перейдите во вкладку «Удаленный доступ«, ниже установите «Разрешить удаленные подключения к этому компьютеру» и снимите галочку «Разрешить подключения только с компьютеров, на которых работает проверка подлинности«.
2. Обновление Windows 10/7 и обновление CredSPP
Во первых, обновите все свои устройства в «Центре обновления Windows«, которые подключаются через удаленный доступ. Во вторых, проверьте специальные патчи обновления, которые устраняли уязвимость в RDP, их можно посмотреть на официальном сайте Microsoft CVE-2018-0886, и обновите свои Windows 10/7, Server, RT, LTSB для всех ПК. Тем самым вы обновите CredSPP.
3. Групповые политики
Нажмите Win + R и введите gpedit.msc, чтобы открыть редактор групповых политик. В политиках перейдите «Конфигурация компьютера» > «Административные шаблоны» > «Система» > «Передача учетных данных» > справа найдите «Защита от атак с использованием криптографического оракула» (Oracle Remediation) и нажмите по этой политике два раза мышкой, чтобы открыть свойства.
- В свойствах выберите «Включено» и ниже в графе «уровень защиты» поставьте «Оставить уязвимость«. Нажмите применить и следуйте сразу ниже пункту.
- Запустите теперь командную строку от имени администратора и введите
gpupdate /force
, чтобы обновить политики и применения вступили в силу. Проверьте устранена ли ошибка проверки подлинности RDP, если нет, то перезагрузите ПК.
4. Редактор реестра
Нажмите Win + R и введите regedit, чтобы открыть редактор реестра. В реестре перейдите по пути:
HKLMSoftwareMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters
- Справа дважды щелкните по AllowEncryptionOracle и поставьте значение 2.
- Перезагрузите ПК и надеюсь, что проблема с проверки подлинности RDP при подключении удаленного доступа решена.
Если вы не делали способ 2, то у вас не будет папки
CredSSPParameters
. Проделайте способ 2 или создайте вручную папкуCredSSP
с подпапкойParameters
и ключом AllowEncryptionOracle со значением 2.
Смотрите еще:
- Подключение к удаленному рабочему столу в Windows
- Служба профилей пользователей не удалось войти в систему windows 10
- Произошла неустранимая ошибка при выполнении программы sysprep
- Операционная система не найдена при включении компьютера
- Не найден сетевой путь ошибка 0x80070035
[ Telegram | Поддержать ]
После установки обновления KB4103718 на моем компьютере с Windows 7 я не могу удаленно подключится к серверу c Windows Server 2012 R2 через удаленный рабочий стол RDP. После того, как я указываю адрес RDP сервера в окне клиента mstsc.exe и нажимаю «Подключить», появляется ошибка:
Подключение к удаленному рабочему столу
Произошла ошибка проверки подлинности.
Указанная функция не поддерживается.
Удаленный компьютер: computername
После того, как я удалил обновление KB4103718 и перезагрузил компьютер, RDP подключение стало работать нормально. Если я правильно понимаю, это только временное обходное решение, в следующем месяце приедет новый кумулятивный пакет обновлений и ошибка вернется? Можете что-нибудь посоветовать?
Ответ
Вы абсолютно правы в том, что бессмысленно решать проблему удалением обновлений Windows, ведь вы тем самым подвергаете свой компьютер риску эксплуатации различных уязвимостей, которые закрывают патчи в данном обновлении.
В своей проблеме вы не одиноки. Данная ошибка может появится в любой операционной системе Windows или Windows Server (не только Windows 7). У пользователей английской версии Windows 10 при попытке подключится к RDP/RDS серверу аналогичная ошибка выглядит так:
An authentication error has occurred.
The function requested is not supported.
Remote computer: computername
Ошибка RDP “An authentication error has occurred” может появляться и при попытке запуска RemoteApp приложений.
Почему это происходит? Дело в том, что на вашем компьютере установлены актуальные обновления безопасности (выпущенные после мая 2018 года), в которых исправляется серьёзная уязвимость в протоколе CredSSP (Credential Security Support Provider), использующегося для аутентификации на RDP серверах (CVE-2018-0886) (рекомендую познакомится со статьей Ошибка RDP подключения: CredSSP encryption oracle remediation). При этом на стороне RDP / RDS сервера, к которому вы подключаетесь со своего компьютера, эти обновления не установлены и при этом для RDP доступа включен протокол NLA (Network Level Authentication / Проверку подлинности на уровне сети). Протокол NLA использует механизмы CredSSP для пре-аутентификация пользователей через TLS/SSL или Kerberos. Ваш компьютер из-за новых настроек безопасности, которые выставило установленное у вас обновление, просто блокирует подключение к удаленному компьютеру, который использует уязвимую версию CredSSP.
Что можно сделать для исправления эту ошибки и подключиться к вашему RDP серверу?
- Самый правильный способ решения проблемы – установка последних кумулятивных обновлений безопасности Windows на компьютере / сервере, к которому вы подключаетесь по RDP;
- Временный способ 1. Можно отключить проверку подлинности на уровне сети (NLA) на стороне RDP сервера (описано ниже);
- Временный способ 2. Вы можете на стороне клиента разрешить подключение к RDP серверам с небезопасной версией CredSSP, как описано в статье по ссылке выше. Для этого нужно изменить ключ реестра AllowEncryptionOracle (команда
REG ADD
HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2
) или изменить настройки локальной политики Encryption Oracle Remediation / Исправление уязвимости шифрующего оракула), установив ее значение = Vulnerable / Оставить уязвимость).Это единственный способ доступа к удаленному серверу по RDP, если у вас отсусвует возможность локального входа на сервер (через консоль ILO, виртуальной машины, облачный интерфейс и т.д.). В этом режиме вы сможете подключиться к удаленному серверу и установить обновления безопасности, таким образом перейдете к рекомендуемому 1 способу. После обновления сервера не забудьте отключить политику или вернуть значение ключа AllowEncryptionOracle = 0 :
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 0
Отключение NLA для протокола RDP в Windows
Если на стороне RDP сервера, которому вы подключаетесь, включен NLA, это означает что для преаутентификации RDP пользователя используется CredSPP. Отключить Network Level Authentication можно в свойствах системы на вкладке Удаленный доступ (Remote), сняв галку «Разрешить подключения только с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети / Allow connection only from computers running Remote Desktop with Network Level Authentication (recommended)» (Windows 10 / Windows 8).
В Windows 7 эта опция называется по-другому. На вкладке Удаленный доступ нужно выбрать опцию «Разрешить подключения от компьютеров с любой версией удаленного рабочего стола (опасный) / Allow connections from computers running any version of Remote Desktop (less secure)».
Также можно отключить проверку подлинности на уровне сети (NLA) с помощью редактора локальной групповой политики — gpedit.msc (в Windows 10 Home редактор политик gpedit.msc можно запустить так) или с помощью консоли управления доменными политиками – GPMC.msc. Для этого перейдите в разделе Конфигурация компьютера –> Административные шаблоны –> Компоненты Windows –> Службы удаленных рабочих столов – Узел сеансов удаленных рабочих столов –> Безопасность (Computer Configuration –> Administrative Templates –> Windows Components –> Remote Desktop Services – Remote Desktop Session Host –> Security), отключите политику Требовать проверку подлинности пользователя для удаленных подключений путем проверки подлинности на уровне сети (Require user authentication for remote connections by using Network Level Authentication).
Также нужно в политике «Требовать использования специального уровня безопасности для удаленных подключений по протоколу RDP» (Require use of specific security layer for remote (RDP) connections) выбрать уровень безопасности (Security Layer) — RDP.
Для применения новых настроек RDP нужно обновить политики (gpupdate /force) или перезагрузить компьютер. После этого вы должны успешно подключиться к удаленному рабочему столу сервера.
Windows, Windows 10, Windows 7, Windows 8, Windows Server, Безопасность
- 10.05.2018
- 147 021
- 59
- 23.05.2022
- 34
- 31
- 3
- Содержание статьи
- Общая информация
- Способ 1: Установка обновления для исправления шифрования CreedSSP
- Способ 2: Отключение уведомления об ошибке шифрования CreedSSP через групповые политики
- Способ 3: Отключение уведомления об ошибке шифрования CreedSSP путем правки реестра
- Комментарии к статье ( 59 шт )
- Добавить комментарий
После 8 мая 2018 года, многие пользователи операционных систем Windows столкнулись с проблемой, в результате которой при попытке зайти через удаленный рабочий стол на другой компьютер под управлением ОС Windows (или же при использовании remoteapp), они получают следующую ошибку:
Произошла ошибка при проверке подлинности.
Указанная функция не поддерживается
Причиной ошибки может быть исправление шифрования CredSSP.
Общая информация
Скриншот с текстом ошибки
В данной статье мы рассмотрим 3 способа исправления этой ошибки. Первый способ — является наиболее правильным и именно его необходимо использовать, в случае, если вы столкнулись с данной проблемой. Второй и третий способ, хоть и позволяет убрать ошибку, но пользоваться им стоит только если нет возможности установить патч.
Способ 1: Установка обновления для исправления шифрования CreedSSP
Причиной данной ошибки является отсутствие обновления CVE-2018-0886 на стороне сервера или того компьютера, на который вы пытаетесь подключиться, используя удаленный рабочий стол (RDP). Для её устранения достаточно просто установить данное обновление на компьютере, который выступает в роли сервера, а так же на компьютере, который выступает в роли клиента.
Взять обновление для необходимой версии ОС можно по ссылкам ниже:
- Обновление CVE-2018-0886 для Windows Server 2016 1803
- Обновление CVE-2018-0886 для Windows Server 2016 1709
- Обновление CVE-2018-0886 для Windows Server 2016 1703
- Обновление CVE-2018-0886 для Windows Server 2016 1607
- Обновление CVE-2018-0886 для Windows Server 2016 1511
- Обновление CVE-2018-0886 для Windows Server 2016
- Обновление CVE-2018-0886 для Windows 10 1803 ARM64
- Обновление CVE-2018-0886 для Windows 10 1803 x86
- Обновление CVE-2018-0886 для Windows 10 1803 x64
- Обновление CVE-2018-0886 для Windows 10 1709 ARM
- Обновление CVE-2018-0886 для Windows 10 1709 x86
- Обновление CVE-2018-0886 для Windows 10 1709 x64
- Обновление CVE-2018-0886 для Windows 10 1703 ARM
- Обновление CVE-2018-0886 для Windows 10 1703 x86
- Обновление CVE-2018-0886 для Windows 10 1703 x64
- Обновление CVE-2018-0886 для Windows 10 1607 ARM
- Обновление CVE-2018-0886 для Windows 10 1607 x86
- Обновление CVE-2018-0886 для Windows 10 1607 x64
- Обновление CVE-2018-0886 для Windows 10 1511 ARM
- Обновление CVE-2018-0886 для Windows 10 1511 x86
- Обновление CVE-2018-0886 для Windows 10 1511 x64
- Обновление CVE-2018-0886 для Windows 10 x86
- Обновление CVE-2018-0886 для Windows 10 x64
- Обновление CVE-2018-0886 для Windows Server 2012 R2
- Обновление CVE-2018-0886 для Windows 8.1 x86
- Обновление CVE-2018-0886 для Windows 8.1 x64
- Обновление CVE-2018-0886 для Windows Server 2012
- Обновление CVE-2018-0886 для Windows Server 2008 R2
- Обновление CVE-2018-0886 для Windows 7 x86
- Обновление CVE-2018-0886 для Windows 7 x64
Способ 2: Отключение уведомления об ошибке шифрования CreedSSP через групповые политики
Если же установить обновления по какой-то причине невозможно, то можно отключить данное уведомление об ошибке. Для этого, на компьютере, который выступает в роли клиента, проводим следующие действия:
- В окне «Выполнить«, «Командной строке» или PowerShell нужно выполнить команду
gpedit.msc
. После этого произойдет загрузка консоли управления групповыми политиками. - В ней нужно перейти по следующему пути: Конфигурация компьютера — Административные шаблоны — Система — Передача учетных данных. Для английской версии данный путь выглядит следующим образом: Computer Configuration — Administrative Templates — System — Credentials Delegation.
- Открываем параметр «Исправление уязвимости шифрующего оракула» («Encryption Oracle Remediation» в англ. версии), и нажимаем «Включено» («Enabled»). Уровень защиты ставим как «Оставить уязвимость» («Vulnerable»).
- Нажимаем «ОК», и выходим из управления групповыми политиками.
Способ 3: Отключение уведомления об ошибке шифрования CreedSSP путем правки реестра
В том случае, если в вашей редакции Windows отсутствует редактор групповых политик (например Windows 10 Домашняя), то тогда придется внести нужные правки в реестр вручную. Для этого, на компьютере, который выступает в роли клиента, проводим следующие действия:
- Открываем редактор реестра, и переходим по следующему пути (в случае его отсутствия, его необходимо создать):
HKLMSoftwareMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters
- Ищем параметр DWORD под названием AllowEncryptionOracle, и ставим значение 2. Если такого параметра нет, то создаем его.
- Перезагружаем компьютер
Для тех, кто не хочет возиться с реестром, достаточно просто выполнить команду приведенную ниже, в командной строке с правами администратора:
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2
Проблема CredSSP RDP
Добрый день, уважаемые читатели блога! Отпуск закончился и принёс свои сюрпризы.
Сегодня вал звонков от сотрудников: «Иван! Не можем подключиться к серверу!». К серверу пользователи подключаются через RDP. В настройках ничего не менялось, для обновлений ещё не время. Полез смотреть на компьютер пользователя и показало вот такую ошибку:
«Произошла ошибка при проверке подлинности.
Указанная функция не поддерживается
Причиной ошибки может быть исправление шифрования CredSSP.»
Причиной данной проблемы является отсутствие обновления CVE-2018-0886 на сервере или клиенте, проблема зафиксирована после 8 мая 2018 года.
Решение №1
Скачать соответствующие обновления от компании Microsoft (лучший вариант):
- CVE-2018-0886 для Windows 10 x86
- CVE-2018-0886 для Windows 10 x64
- CVE-2018-0886 для Windows 8.1 x86
- CVE-2018-0886 для Windows 8.1 x64
- CVE-2018-0886 для Windows 7 x86
- CVE-2018-0886 для Windows 7 x64
- CVE-2018-0886 для Windows Server 2016
- CVE-2018-0886 для Windows Server 2012 R2
- CVE-2018-0886 для Windows Server 2012
- CVE-2018-0886 для Windows Server 2008 R2
- CVE-2018-0886 для Windows Server 2008 R2 Itanium
Сразу отмечу для Windows 10 и Windows Server 2016 объём обновлений довольно большой. Так что запаситесь терпением. Для остальных систем ТОЛЬКО обновление безопасности (без накопительного обновления).
Решение №2
Если по каким-то причинам обновление установить не удаётся можно включить игнорирование уязвимости CredSSP. Сделаем это через редактор групповых политик.
В окне выполнить пишем gpedit.msc, запускам.
Далее идём в Конфигурация компьютера — Административные шаблоны — Система — Передача учетных данных.
Ищем политику «Исправление уязвимости шифрующего оракула», включаем его (по стандарту стоит настройка «Не задана») ставим точку напротив «Включена», уровень защиты выберем «Оставить уязвимость».
Нажимаем «ОК» и теперь сможем без проблем подключаться к серверу.
Но лучше поставить обновления.
Всем удачи и хороших новостей после отпуска!