Після установки останніх оновлень безпеки, які вийшли 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.
Дана помилка пов’язана з тим, що на 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 |