Rdp credssp error

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

Обновлено 25.11.2019

rdp logo

Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org, в прошлый раз мы с вами чинили HDD с поврежденной файловой системой и состоянием RAW уверен, что вам удалось это сделать. Сегодня я в очередной раз переведу наш вектор траблшутера в сторону терминальных столов, а именно мы рассмотрим ситуацию, что когда вы пытаетесь  подключиться к удаленному серверу по RDP протоколу, а у вас после ввода логина и пароля, выскакивает ошибка, что вы не прошли проверку подлинности и причиной ошибки может быть исправление шифрования CredSSP. Давайте разбираться, что за зверь, этот CredSSP и как вам получить доступ к вашему серверу.

Как выглядит ошибка credssp

Перед тем, как я покажу вам известные мне методы ее устранения, я бы как обычно хотел подробно описать ситуацию. Вчера при попытке подключиться к своему рабочему компьютеру, работающему на Windows 10 1709, с терминального стола, входящего в RDS ферму на Windows Server 2012 R2, я получил ошибку после ввода логина и пароля:

An authentication error has occurred. The function requested is not supported. Remote computer name. This coild be to CredSSP encryption oracle remediation.

credSSP encryption oracle remediation

Ну и конечно в русском исполнении:

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

Причиной ошибки может быть исправление шифрования CredSSP

Получается двоякая ситуация, что RDP как бы работает, но вот по какой-то причине ваши учетные данные на принимающей стороне не соответствуют, каким-то критериям, давайте разбираться, что это за зверь CredSSP.

Назначение CredSSP

Что такое CredSSP — это Win32 API, используемый системами Microsoft Windows для выполнения различных операций, связанных с безопасностью, таких как аутентификация. SSPI функционирует, как общий интерфейс для нескольких поставщиков поддержки безопасности (SSP). Поставщик поддержки безопасности — это библиотека динамической компоновки (DLL), которая делает один или несколько пакетов безопасности доступными для приложений.

CredSSP позволяет приложению делегировать учетные данные пользователя от клиента целевому серверу для удаленной аутентификации. CredSSP предоставляет зашифрованный канал протокола безопасности транспортного уровня . Клиент проходит проверку подлинности по зашифрованному каналу с использованием протокола SPNEGO (Simple and Protected Negotiate) с Microsoft Kerberos или Microsoft NTLM.

После проверки подлинности клиента и сервера клиент передает учетные данные пользователя на сервер. Учетные данные дважды шифруются с использованием ключей сеанса SPNEGO и TLS. CredSSP поддерживает вход в систему на основе пароля, а также вход в систему с использованием смарт-карт на основе X.509 и PKINIT.

Подробнее на Microsoft https://docs.microsoft.com/en-us/windows/desktop/secauthn/credential-security-support-provider

Windows SSP

Следующие поставщики общих служб устанавливаются вместе с Windows:

  • NTLM (Представлено в Windows NT 3.51 ) (msv1_0.dll) — обеспечивает проверку подлинности NTLM с запросом/ответом для клиент-серверных доменов до Windows 2000 и для не доменной аутентификации (SMB /CIFS).
  • Kerberos (Представлен в Windows 2000 и обновлен в Windows Vista для поддержки AES ) (kerberos.dll). Предпочтителен для взаимной аутентификации клиент-серверного домена в Windows 2000 и более поздних версиях. 
  • Согласование (введено в Windows 2000) (secur32.dll) — выбирает Kerberos и, если не доступно, протокол NTLM. SSP обеспечивает возможность единого входа , иногда называемую встроенной аутентификацией Windows (особенно в контексте IIS). В Windows 7 и более поздних версиях представлен NEGOExts, в котором согласовывается использование установленных пользовательских SSP, которые поддерживаются на клиенте и сервере для аутентификации.
  • Безопасный канал (он же SChannel) — Представлен в Windows 2000 и обновлен в Windows Vista и выше для поддержки более надежного шифрования AES и ECC. Этот поставщик использует записи SSL/TLS для шифрования полезных данных. (Schannel.dll)
  • PCT (устарел) реализация Microsoft TLS/SSL — криптография SSP с открытым ключом, которая обеспечивает шифрование и безопасную связь для аутентификации клиентов и серверов через Интернет. Обновлено в Windows 7 для поддержки TLS 1.2.
  • Digest SSP (Представлено в Windows XP ) (wdigest.dll) — Обеспечивает проверку подлинности HTTP и SASL на основе запросов/ответов между системами Windows и не-Windows, где Kerberos недоступен.
  • Учетные данные (CredSSP) (Представлено в Windows Vista и доступно в Windows XP с пакетом обновления 3 (SP3)) (credssp.dll) — обеспечивает SSO и проверку подлинности на уровне сети для служб удаленных рабочих столов.
  • Аутентификация с распределенным паролем (DPA) — (Представлено в Windows 2000) (msapsspc.dll) — Обеспечивает аутентификацию через Интернет с использованием цифровых сертификатов.
  • Криптография с открытым ключом «пользователь-пользователь» (PKU2U) (представлена ​​в Windows 7 ) (pku2u.dll) — обеспечивает одноранговую аутентификацию с использованием цифровых сертификатов между системами, которые не являются частью домена.

Подробнее на https://en.wikipedia.org/wiki/Security_Support_Provider_Interface

Причины ошибки шифрования CredSSP

В марте 2018 года, компания Microsoft выпустила обновление безопасности для устранения уязвимостей для протокола поставщика поддержки безопасности учетных данных (CredSSP) под именем CVE-2018–0886 (https://support.microsoft.com/en-us/help/4093492/credssp-updates-for-cve-2018-0886-march-13-2018), используемого подключениями по протоколу удаленного рабочего стола (RDP) для клиентов Windows и Windows Server. Как только пользователи и системные администраторы произвели установку апдейтов, то по всему миру начались массовые жалобы, что люди не могут подключаться по протоколу RDP к серверам, компьютерам, получая ошибку, что причиной ошибки может быть шифрование CredSSP.

К сожалению 99% людей и администраторов совершают одну и туже ошибку, они сразу ставят обновления, не дождавшись пары дней после их выхода. Обычно этого времени хватает, чтобы вендор определил проблемы и отозвал глючное обновление.

после обновления Windows

Уязвимость в протоколе Credential Security Support Provider (CredSSP — провайдер поддержки безопасности учетных данных) допускала удаленный запуск произвольного кода на уязвимой системе и 8 мая 2018 г. Microsoft изменила уровень безопасности подключения с Vulnerable на Mitigated и начались проблемы подключения к удаленному рабочему столу по RDP. Ранее вы могли удаленно подключаться с обновленной машины к машинам без обновления безопасности, так сказать в мягком режиме. Однако с последним обновлением, Microsoft усилила безопасность, и вы больше не можете подключаться к компьютерам без обновления закрывающего брешь CVE-2018–0886.

Под раздачу попали буквально все, клиентские ОС Windows 7, Windows 8.1, Windows 10 с которых были попытки подключиться к RDS ферме или RemoteApp приложениям работающим на Windows Server 2008 R2 и выше. Если бы вы читали ветки обсуждений в эти дни, то вы бы поняли все негодование людей, особенно с запада.

Варианты исправления ошибки CredSSP

На самом деле вариантов много, есть правильные, есть и временные и обходные, которые нужно сделать быстро, чтобы хоть как-то работало, так как бизнес может в этот момент простаивать и терять деньги.

  • Вы можете удалить новое обновление безопасности, самый плохой вариант, но в ответственные моменты, иногда используется, чтобы перенести работы на вечер или ночь
  • Если нужно быстро получить доступ к серверу и избежать проверку подлинности credssp, то я вам советую отключить на принимающем подключении сервере галку NLA (Network Level Authentication) в русском варианте «Разрешить подключение только с компьютеров, на которых работает удаленный рабочий стол  с проверкой подлинности на уровне сети»
  • То же быстрый метод и на массовое применение, это использование групповой политики, которая изменит шифрование Oracle Remediation
  • Ну и самый правильный методэто установка обновлений на все ваши системы

Отключаем credssp в Windows через NLA

Данный метод выхода из ситуации я бы рассматривал, как быстрое, временное решение, до того, как вы установите обновления безопасности. Чтобы разрешить удаленное подключение к серверу и избегать ситуации, что произошла ошибка при проверке подлинности credssp, сделайте вот что. Откройте свойства моего компьютера, попав в систему, так же можно нажать одновременно WIN+Pause Breake или как вариант в командной строке ввести control /name Microsoft.System. В окне «Система» находим пункт меню «Настройка удаленного доступа»

Отключение NLA для CredSSP

Снимите галку «Разрешить подключение только с компьютеров, на которых работает удаленный рабочий стол  с проверкой подлинности на уровне сети»

Отключение NLA для CredSSP-2

После этого вы легко сможете подключиться к данному компьютеру или серверу, но как быть что вы не можете туда попасть и снять эту галку, тут нам на помощь придет реестр Windows. Вы можете удаленно создать нужные ключи реестра, которые отключат галку NLA или политику CredSSP. Для этого вы можете пойти двумя путями:

  1. Использовать сетевой реестр Windows
  2. Использовать удаленное управление компьютером, например PsExec.exe, я вам с помощью него уже показывал, как открывать порты в брандмауэре, удаленно.

Давайте попробуем через удаленный реестр, для этого открываем Regedit, через окно «Выполнить».

отключить credssp через реестр Windows

Из меню «Файл» выберите пункт «Подключить сетевой реестр», далее найдите нужный вам сервер.

Подключение сетевого реестра

У вас подключится дополнительный реестр с двумя кустами. Переходите по пути (Если у вас не будет CredSSPParameters, то нужно будет их создать):

HKLMSoftwareMicrosoftWindowsCurrentVersion PoliciesSystemCredSSPParameters

Тут вам необходимо создать REG_DWORD ключ с именем AllowEncryptionOracle и значением 2. В данном варианте политика CredSSP выставит Уязвимый уровень — это самый низкий уровень защиты. Это позволит вам подключаться к серверам удаленно, используя RDP. Однако это подвергнет серверы атакам.

credssp в реестре windows

Или можно так же отключить NLA, для этого найдите ветку реестра:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl Terminal ServerWinStationsRDP-Tcp

Найдите там ключ SecurityLayeи выставите ему значение 0, чтобы деактивировать Network Level Authentication.

Теперь то же самое вы можете выполнить и через PsExec.exe, выставив для CredSSP минимальный уровень защиты или же отключить NLA, для этого находясь в cmd в режиме администратора введите команду:

PsExec.exe \w10-cl01 -u rootАдминистратор -p пароль cmd

w10-cl01 — это имя компьютера.

исправление ошибки credssp windows

Далее имея запущенный сеанс cmd для удаленного компьютера, выполните команду:

REG ADD HKLMSoftwareMicrosoftWindows CurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2 (0 вернет все как было)

rdp ошибка credssp

Аналогично можно сделать и для отключения Network Level Authentication, команда будет такой:

REG ADD «HKEY_LOCAL_MACHINESYSTEM CurrentControlSetControlTerminal ServerWinStationsRDP-Tcp» /v SecurityLayer /t REG_DWORD /d 0

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

Отключаем шифрование credssp через GPO

Если у вас большая инфраструктура, в которой сотни компьютеров и сотни серверов, то вы можете до установки нужных обновлений в вечернее время, временно отключить новый уровень шифрования CredSSP и убрать ошибку «Удаленный компьютер имя. Причиной ошибки может быть исправление шифрования CredSSP». Для этого мы можем воспользоваться всеми плюсами доменной инфраструктуры Active Directory. Тут два варианта, вы можете создать массовую политику для распространения ее на нужные OU или если у вас требование для одного или двух локальных компьютеров, то на них можно запустить локальный редактор групповых политик, тем самым внеся изменения только на них.

Напоминаю, что оснастку управление групповой политикой вы можете найти на контроллере домена или компьютере с установленным пакетом RSAT, открыть ее можно через команду в окне «Выполнить» gpmc.msc. Если нужно открыть локальный редактор групповых политик, то в окне «Выполнить» введите gpedit.msc.

gpedit.msc windows 10

Вам необходимо перейти в ветку:

Конфигурация компьютера — Административные шаблоны — Система — Передача учетных данных — Исправление уязвимости шифрующего оракула (Computer Configuration — Administrative Templates — System — Credentials Delegation — Encryption Oracle Remediation

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

Открываем настройку «Исправление уязвимости шифрующего оракула (Encryption Oracle Remediation)». Включаем политику, у вас активируется опция «Уровень защиты», на выбор будет три варианта:

  • Принудительно применять обновленные клиенты (Force Updated Clients) — она будет стоять по умолчанию из-за максимального уровня защиты, вам данную опцию нужно сменить. Это так сказать максимально безопасный уровень взаимодействия клиент, он должен быть в идеале, после установки обновлений на все сервера и компьютеры.
  • Оставить уязвимость (Vulnerable) – клиенты могут подключаться на уязвимые машины.
  • Уменьшить риск (Mitigated) – клиенты не могут подключаться к уязвимым серверам, но серверы могут принимать уязвимые клиенты.

Настройка Encryption Oracle Remediation

Выбираем на время пункт «Оставить уязвимость (Vulnerable)». Сохраняем настройки.

Оставить уязвимость credSSp

После чего вам нужно обновить политику, для этого откройте командную строку и введите gpupdate /force. Если у вас не доменный компьютер, да и еще Windows 10 Home, которая не имеет встроенного локального редактора политик, то вам как я описывал выше, нужно производить правку реестра

REG ADD HKLMSoftwareMicrosoftWindows CurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2 (0 вернет все как было)

На просторах интернета ходит скрипт PowerShell, который поможет включить данную политику на всех компьютерах в Active Directory

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
}
}

Самый правильный метод, это установка обновлений

Когда вам удалось везде подключиться и подошло время обслуживания ваших серверов, быстренько производим установку обновлений закрывающих брешь (CVE-2018-0886 | CredSSP Remote Code Execution Vulnerability).

https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2018-0886

Раньше были вот такие KB, но они со временем могут меняться свой номер, поэтому пройдите по ссылке выше, так будет надежнее.

  • Windows Server 2012 R2 / Windows 8: KB4103715
  • Windows Server 2008 R2 / Windows 7: KB4103712
  • Windows Server 2016 / Windows 10 1607 — KB4103723
  • Windows Server 2016 / Windows 10 1703 — KB4103731
  • Windows Server 2016 / Windows 10 1709 — KB4103727
  • Windows Server 2016 / Windows 10 1803 — KB4103721

CVE-2018-0886 CredSSP Remote Code Execution Vulnerability

На этом у меня все, надеюсь, что вы разобрались в работе CredSSP и научились ей управлять. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

После установки обновлений безопасности Windows, которые вышли после мая 2018 года, вы можете столкнуться с ошибкой CredSSP encryption oracle remediation при RDP подключении к удаленному серверу и компьютеру Windows в следующих случаях:

  • Вы подключаетесь к удаленному рабочему столу компьютера с недавно установленной старой (например, 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.

windows 10 rdp ошибка подключения CredSSP encryption oracle remediation

Подключение к удаленному рабочему столу

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

Данная ошибка связана с тем, что на Windows Server или на обычной десктопной версии Windows, к которой вы пытаетесь подключится по RDP, не устанавлены обновления безопасности Windows (как минимум с марта 2018 года).

Дело в том, что еще в марте 2018 Microsoft выпустила обновление, закрывающее возможность удаленного выполнения кода с помощью уязвимости в протоколе CredSSP (Credential Security Support Provider). Подробно проблема описана в бюллетене CVE-2018-0886. В мае 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

В списке перечислены номера KB от мая 2018 года, на данный момент вам нужно скачивать и устанавливать более новый пакет накопительных обновлений для вашей редакции Windows. Вы можете получить последние обновления безопасности через Windows Update с серверов Microsoft, с локального WSUS сервера, или скачать вручную из каталога обновлений Windows — Microsoft Update Catalog — https://www.catalog.update.microsoft.com/Home.aspx. Например, для поиска обновлений за август 2019 года для Windows 10 1803 нужно использовать поисковый запрос: windows 10 1803 8/*/2019. Скачайте и установите кумулятивное обновление (в моем примере это будет “2019-08 Cumulative Update for Windows 10 Version 1803 for x64-based Systems (KB4512509)”.скачать последние обновления windows из microsoft update catalog

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

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

  1. Запустите редактор локальных GPO — gpedit.msc;
  2. Перейдите в раздел политик Computer Configuration -> Administrative Templates -> System -> Credentials Delegation (Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных);
    групповая политика Encryption Oracle Remediation
  3. Найдите политику с именем Encryption Oracle Remediation (Исправление уязвимости шифрующего оракула). Включите политику (Enabled/ Включено), а в качестве параметра в выпадающем списке выберите Vulnerable / Оставить уязвимость;изменить значение политики CredSSP на Vulnerable
  4. Осталось обновить политики на вашем компьютере (команда
    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

ключ реестра AllowEncryptionOracle

Вы можете изменить этот параметр в реестре сразу на множестве компьютеров в 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 как показано выше. Если при установке MSU обновления появляется ошибка “Это обновление неприменимо к вашему компьютеру”, познакомьтесь со статей по ссылке.

Для 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

qwmi как узнать дату установки последних обновлений безопасности windows

В этом примере видно, что последние обновления безопасности Windows устанавливалось 17 июня 2018 года. Скачайте и установите более новый MSU файл с кумулятивным обновлением для вашей редакции Windows (смотрите выше).

This error occurs if you attempt to establish an insecure RDP connection, and the insecure RDP connection is blocked by an encryption Oracle Remediation policy configuration on the server or client. This configuration defines how to build an RDP session using CredSSP and whether unsafe RDP will be allowed.

credssp1

To resolve this issue, you need to install the update on your servers. However, if you want to connect to a server that does not receive the update, you can downgrade the protection level to Vulnerable. You can do this through a group policy. Also, you can adjust the Remote Desktop Settings to fix Remote desktop authentication errors in a simple way.

To adjust the Remote Desktop Setting

  1. Click on the Windows key to open start and search run and then click on the Run application which is shown in the below image to execute the sysdm.cpl.

    credssp2

  2. Enter sysdm.cpl as mentioned in the below image and click on OK button.

    credssp3

  3. Now select the Remote tab and deselect the Allow connections only from computers running Remote Desktop with Network Level Authentication (recommended) option which is shown in the below image.

    credssp4

  4. Once the Allow connections only from computers running Remote Desktop with Network Level Authentication (recommended) option is deselected then press the Apply and OK buttons.

To set the protection level to Vulnerable via Group Policy

  1. Click on the Windows key to open start and search run and then click on the Run application which is shown in the below image to execute the gpedit.msc.

    credssp5

  2. Enter gpedit.msc as mentioned in the below image and click on OK button.

    credssp6

  3. Now go to the following path: Computer Configuration > Administrative Templates > System > Credentials Delegation

    credssp7

    credssp8

    credssp9

  4. Double click on the Encryption Oracle Remediation mentioned in the below image to edit.

    credssp10

  5. Now set it to Enabled, and set the protection level to Vulnerable as in the below image, and click on the OK button.

    credssp11

Related Tutorials

  • How to Access LayerStack Cloud Servers

  • How to Enable & Disable Remote Desktop Protocol (RDP) on Windows Cloud Servers

  • How to change Remote Desktop (RDP) port on Windows Cloud Servers

After installing the Windows security updates that issued after May 2018, you may face the CredSSP encryption oracle remediation error during RDP connection to the remote Windows server or computer in the following cases:

  • You are trying to connect to the remote desktop of a computer with a recently installed old Windows version (for example, Windows 10 RTM, or build 1709 or older, Windows Server 2012 R2, Windows Server 2016), on which the latest Windows security updates are not installed;
  • You are trying to connect via RDP to a computer on which Microsoft updates have not been installed for a long time;
  • The remote computer blocked RDP connection because the necessary security updates are missing on your computer.

Let’s try to understand what the RDP error CredSSP encryption oracle remediation means and how to fix it.

So, when trying to connect to the RemoteApp on RDS servers running Windows Server 2016/2012 R2/2008 R2, or to remote desktops of other users using the RDP protocol (on Windows 10, 8.1 or 7), an error appears:

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.

windows 10 rdp error CredSSP encryption oracle remediation

This error occurs due to the fact that Windows security updates (at least since March 2018) were not installed on remote Windows instance, to which you are trying to connect via RDP.

In March 2018, Microsoft released updates that block remote code execution using a vulnerability in the CredSSP (Credential Security Support Provider) protocol (bulletin CVE-2018-0886). In May 2018, an additional update was published, which by default prevents Windows clients from connecting to remote RDP servers with a vulnerable (unpatched) version of the CredSSP protocol.

Thus, if you have not installed cumulative security updates on your Windows RDS/RDP servers (computers) since March 2018, and May 2018 updates (or newer) were installed on RDP clients, then when you try to connect to RDS servers with an unpatched version of CredSSP an error appears: This could be due to CredSSP encryption oracle remediation.

The RDP error on clients appears after the following security updates are installed:

  • 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

This list shows the KB numbers from May 2018; at the moment you need to download and install the latest cumulative update package for your Windows edition. You can get the latest security updates through Windows Update from Microsoft servers, from a local WSUS server, or manually download hotfix *.msu files from the Microsoft Update Catalog (https://www.catalog.update.microsoft.com/Home.aspx). For example, to search for August 2019 updates for Windows 10 1803, you need to use the following search query: windows 10 1803 x64 8/*/2019. Download and install the Windows cumulative update (in my example, it is “2019-08 Cumulative Update for Windows 10 Version 1803 for x64-based Systems (KB4512509)”.  download latest windows security update from microsoft catalog

To restore remote desktop connection, you can uninstall the specified security update on the remote computer (but it is not recommended and you should not do this, there is a more secure and correct solution).

To fix the connection problem, you need to temporarily disable the CredSSP version check on the computer from which you are connecting via RDP. This can be done using the local Group Policy editor.

  1. Run the local GPO editor: gpedit.msc;
  2. Go to the GPO section Computer Configuration -> Administrative Templates -> System -> Credentials Delegation;
    GPO Encryption Oracle Remediation
  3. Locate the policy with the name Encryption Oracle Remediation, enable the policy and set the Protection level to Vulnerable;Allow Vulnerable CredSSP rdp connection
  4. Update the policy setting on the computer (run gpupdate /force command) and try to connect to the remote server via RDP. With the Oracle Remediation Encryption policy set to Vulnerable, client applications with CredSSP support will be able to connect even to unpatched RDS/RDP endpoints.

Encryption Oracle Remediation policy offers 3 available values to protect against CredSSP vulnerability:

  • Force Updated Clients — the highest protection level when the RDP server blocks the connection from non-patched clients. Usually, this policy should be enabled after you have completely updated the entire infrastructure and added the latest security updates to the Windows install images for servers and workstations;
  • Mitigated — in this mode, an outgoing remote RDP connection to RDP servers with a vulnerable version of CredSSP is blocked. However, other services using CredSSP work fine;
  • Vulnerable — the lowest level of protection when connecting to an RDP server with a vulnerable version of CredSSP is allowed.

If you do not have a local GPO editor (for example, in Windows Home editions), you can make a directly registry change that allows RDP connection to servers with unpatched version of CredSSP:

REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2

registry parameter AllowEncryptionOracle

You can change AllowEncryptionOracle registry parameter on multiple computers in AD using a domain GPO or with such a PowerShell script (you can get a list of computers in the domain using the Get-ADComputer cmdlet from the RSAT-AD-PowerShell module):

$computers = (Get-ADComputer -Filter *).DNSHostName
Foreach ($computer in $computers) {
Invoke-Command -ComputerName $computer -ScriptBlock {
REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 2
}
}

After successfully connecting to a remote RDP server (computer), you need to install the latest security updates through the Windows Update (verify that the wuauserv service is enabled) or manually. Download and install the latest cumulative Windows updates from the Microsoft Update Catalog website as shown above. If the error “The update is not applicable to your computer” appears when installing the MSU update, read the article using the link above.

For Windows XP/Windows Server 2003 that are no longer supported, you need to install updates for Windows Embedded POSReady 2009. For example: https://support.microsoft.com/en-us/help/4056564.

After installing the updates and rebooting the server, don’t forget to disable the policy on the clients (either switch it to the Force Updated Clients), or return the value of the AllowEncryptionOracle registry parameter to 0. In this case, your computer will not be at risk of connecting to CredSSP unprotected hosts and exploitation of the vulnerability.

REG ADD HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /v AllowEncryptionOracle /t REG_DWORD /d 0

There is another scenario in which updates are not installed on your computer. For example, the RDP server is updated, but it has a policy that blocks RDP connections from computers with the vulnerable version of CredSSP (Force Updated Clients policy setting). In this case, you will also see the RDP connection error “This could be due to CredSSP encryption oracle remediation”.

Check the Windows updates last install date on your computer using the PSWindowsUpdate module or through the WMI command in the PowerShell console:

gwmi win32_quickfixengineering |sort installedon -desc

powershell: get last security update install date
This example shows that the latest Windows security updates were installed on June 17, 2018. Download and install the newer MSU cumulative update file for your Windows edition (see above).

In March 2018, Microsoft released a security update that fixes a remote code execution vulnerability in the Credential Security Support Provider Protocol (CredSSP). This vulnerability (CVE-2018–0886) allows an attacker to remotely execute arbitrary code on a vulnerable Windows host with an open RDP port (TCP/3389). Any app that used the CredSSP provider for authentication may be vulnerable to this type of attack. In May 2018, an update “2018-05 Security only/Monthly Rollup” was released. It blocks the RDP connection to computers with an affected version of CredSSP.

When you try to connect to a remote computer with a vulnerable CredSSP version from Windows 10/Windows Server 2016, you receive the Remote Desktop Connection error:

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

For more information, see the link.

credssp encryption oracle remediation

On Windows 7, the CredSSP error looks like this:

An authentication error has occurred.

The function requested is not supported.

Remote computer: hostname

this could be due to credssp encryption oracle remediation

Note. CredSSP protocol (Credential Security Support Provider) is a built-in Windows authentication provider that handles authentication requests from other services and applications.

To fix This could be due to credssp encryption oracle remediation error, you need to install the latest Windows security updates on the remote computer. You can install the latest Cumulative Update for your Windows version. You can download the update manually via Microsoft Update Catalog or install it via Windows Update or WSUS.

Hint. CredSSP authentication error appears only when you try to connect via RDP from a computer on which the latest security updates are installed to a non-updated computer (for example, a computer that never gets updates, or a clean installed device with a Windows 10/Windows Server 2016 build that was released before March 2018).

There is a workaround allowing you to temporarily connect to a computer with a vulnerable version of CredSSP. For example, you made a clean install of Windows Server 2016 to a virtual machine or physical host and now you want to remotely connect to the server to configure Windows Update/WSUS settings and install Windows security updates.

To do this, you need to configure a special Group Policy parameter named Encryption Oracle Remediation on your computer from which you are establishing the Remote Desktop connection.

  1. Press Win+R, type gpedit.msc, and press Enter;
    this could be due to credssp encryption oracle remediation windows server 2016
  2. Go to the following section of the Local Group Policy Editor: Computer Configuration > Administrative Templates > System > Credentials Delegation;
  3. Open the policy setting Encryption Oracle Remediation;
  4. Change its state to Enabled, and set Vulnerable in the Protection Level field;
    credssp encryption oracle remediation windows server 2016
  5. Update the Group Policy settings using the gpupdate command:
    gpupdate /force

Hint. You can also allow your computer to connect to a host with vulnerable versions of CredSSP through the registry. Run the following command through an elevated command prompt:

reg add HKLMSoftwareMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /f /v AllowEncryptionOracle /t REG_DWORD /d 2

Now you can connect to the remote host via RDP and install the updates.

There are 3 options in the “Encryption Oracle Remediation” policy:

  • Vulnerable — the client can connect to vulnerable computers;
  • Mitigated — the client cannot connect to vulnerable servers, but the servers can allow vulnerable clients to connect;
  • Force Updated Clients — secure RDP CredSPP interoperability layer.

If from a computer that doesn’t have the CredSPP security update installed you can’t connect to an updated RDP/RDS host with the “Force updated clients” option enabled, you can allow the server to accept connections with an affected version of CredSPP. To do this, you need to enable the policy with the Mitigated value on the server. In this way, to make changes to the server you can remotely connect to it via PowerShell under admin credentials:

Enter-PSSession -ComputerName RDSServer01 -Credential RDSServer01administrator

And allow the connection:

Set-ItemProperty -Path 'HKLM:SoftwareMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters' -name "AllowEncryptionOracle" 2 -Type DWord

Another way to quickly connect to a host with a vulnerable CredSSP version is to disable Network Level Authentication (NLA) for RDP connections. To do this:

  1. Open System Properties by running the sysdm.cpl command;
  2. Go to the Remote tab and disable the option Allow connections only from computers running Remote Desktop with Network Level Authentication (recommended
    this could be due to credssp
  3. Save your changes by clicking OK.

You can also disable NLA for RDP connection using the PowerShell command:

Set-ItemProperty -Path 'HKLM:SystemCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp' -name "UserAuthentication" -Value 0

Now you will be able to connect to the remote host via RDP, but this is not a security solution. After that, you need to go to Settings > Update and Security > Windows Update (you can go to this section by running the command ms-settings:windowsupdate). Click on the Check for Updates button. Wait for Windows to download and install the latest security updates.

credssp encryption oracle remediation server 2016

Here we collected direct links to download MSU updates (security-only updates) that fix the CredSSP vulnerability for older versions of Windows:

  • Windows Server 2016 and Windows 10 LTSB — KB4103723
  • Windows Server 2012 R2 and Windows 8.1 — KB4103715
  • Windows Server 2008 R2 SP1 and Windows 7 Service Pack 1 — KB4103712

Note. Old Windows 10 builds such as 1507 (original release, RTM) and 1511 don’t have security patches to fix the CredSSP CredSSP Oracle remediation vulnerability. The fact is that the period of support for these Windows 10 builds ended in 2018 and no new updates have been released for them since that time. Update your Windows 10 to the latest build available.

After upgrading, don’t forget to disable the policy or reset the AllowEncryptionOracle registry value to its original value:

reg add HKLMSoftwareMicrosoftWindowsCurrentVersionPoliciesSystemCredSSPParameters /f /v AllowEncryptionOracle /t REG_DWORD /d 0

And enable NLA (if you disabled it earlier):

reg add "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TCP" /v UserAuthentication /t REG_DWORD /d 1 /f

In all cases, Microsoft always recommends installing the latest Windows updates on both the RDP server and the client.

  • About
  • Latest Posts

I enjoy technology and developing websites. Since 2012 I’m running a few of my own websites, and share useful content on gadgets, PC administration and website promotion.


Is your remote connection attempt ending up in the RDP authentication error CredSSP message?

CredSSP authentication in Rdesktop authorizes the user credentials from the local computer to a remote computer.

Often after a Microsoft Windows machine update, Rdesktop connection attempts result in such CredSSP errors.

At Bobcares, we often receive requests to fix RDP errors as part of our Server Management Services.

Today, let us discuss the causes for the error and see how our Support Engineers fix the error.

Causes for the RDP authentication error CredSSP

Let’s now check the major causes for the CredSSP error in RDP.

In general, Rdesktop uses CredSSP (Credential Security Support Provider Protocol) for user authentication.

Microsoft releases timely security patches to fix the vulnerabilities. The patches for the CredSSP vulnerability pushed in May 2018 made it mandatory for both client and server computers to have the update installed.

As a result, this error occurs when Microsoft windows update is not installed either on the server or on the client computer. Since the RDP uses CredSSP both the machines need to be updated for successful login. Else the error message will display as:

The latest windows update can be uninstalled to resolve the error. However, rolling back is not a good option since security patches are provided in the update. The best option is to update the remote server.

Let us discuss how our Support Engineers get access to the remote server and update the server.

How to resolve the RDP authentication error CredSSP

There are 2 methods to get access to the server. We can make the changes in policy from the Encryption Oracle Remediation as well as from Windows Registry Editor.

Let us discuss how our Support Engineers get access to the server.

Method 1: From Encryption Oracle Remediation

To change the policy, we do the following.

In the local machine. Go to Run.

Type gpedit.msc and click Enter.

Now expand Computer Configuration >> Administrative Template >> System >> Credentials Delegation >> Encryption Oracle Remediation.

Then double click on Encryption Oracle Remediation policy. Now choose Enable and change protection level to Vulnerable.

Finally, Apply the changes and click OK.

Now we can connect using RDP to the remote server without any error.

Method 2: From Windows Registry Editor

The fix from the Windows Registry Editor requires a series of steps.

In the local machine. Go to Run.

Type regedit and click Enter.

Expand Computer >> HKEY_LOCAL_MACHINE >> SOFTWARE >> Microsoft >> Windows >> CurrentVersion >> Policies >> System >> CredSSP >> Parameters.

Now double-click on the Key Allow Encryption and change the value to 2.

Where Force Updated Clients is 0 and Migitated is 1. Change the value to 2 will make the option Vulnerable. Finally, apply the changes.

Now we can connect using RDP to the remote server without any error.

We will be able to RDP to the server as a result of the changes we made. Since we have changed the option Vulnerable. It is not advisable to leave the option vulnerable. So we update Windows to resolve the error and then change the option to secure.

Again, Registry edits are always critical and incorrect edits can even make the server down.

Update Windows in the remote server

After connecting to the server, We, then go to Windows Update and check for updates. Now we Install all the updates.

To apply the changes, reboot the server.

Once the windows update is complete. We revert the changes that were made to vulnerable.

After the update, we will be able to login to the server without any error.

Ideally, when there is server console access readily available, our Support Engineers just proceed and do the updates from the server itself.

[Still have trouble connecting via RDP? Our Windows Experts are available 24×7 to help you.]

Conclusion

In short, we have discussed the causes for RDP authentication error CredSSP. Also, we have discussed how our Support Engineers login to the remote server and resolve the error.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = «owonCMyG5nEQ0aD71QM»;

Понравилась статья? Поделить с друзьями:
  • Rdp connection error
  • Rdp android error 0x104
  • Rdo ошибка 21002001
  • Rc 20 retro color no license found как исправить
  • Raw read error rate как исправить samsung