Перейти к основному содержанию

Защищаем RDS с помощью SSL

Windows Server

В Windows Server для настройки параметров RDS имеется ряд опций групповой политики. Их можно найти в разделе Computer Configuration\Policies\Administrative Templates\Windows Components\Remote Desktop Services.

По умолчанию в сеансах узла сеансов RD (RD Session Host) используется встроенное шифрование RDP. Однако протокол RDP не обеспечивает аутентификацию для проверки подлинности сервера узла сеансов RD. Вы можете повысить безопасность сеансов RD Session Host, используя протокол Secure Sockets Layer (SSL) или Transport Layer Security (TLS 1.0) для аутентификации сервера и шифрования данных. Для обеспечения повышенной безопасности сервер RD Session Host и клиентский компьютер должны быть правильно настроены для работы с TLS.

Политика "Require use of specific security layer for remote (RDP) connections" определяет, какой механизм безопасности будет использоваться для шифрования и аутентификации при подключении к серверу терминалов. Это ключевая настройка для защиты вашей инфраструктуры от атак типа "злоумышленник в середине" (man-in-the-middle) и несанкционированного доступа.

Доступны три уровня безопасности: RDP, Negotiate и SSL/TLS.

  • SSL (TLS) — Transport Layer Security используется для аутентификации сервера и шифрования всех данных, передаваемых между сервером и клиентом.
  • Negotiate (Согласование). Будет использоваться самый безопасный уровень, поддерживаемый клиентом. Если поддерживается, применяется SSL (TLS 1.0). Если клиент не поддерживает SSL (TLS 1.0), используется уровень безопасности RDP. Это настройка по умолчанию.
  • RDP Security Layer (Уровень безопасности RDP). Для связи между сервером и клиентом используется встроенное шифрование RDP. Если вы выберете уровень безопасности RDP, вы не сможете использовать аутентификацию на сетевом уровне (Network Level Authentication).

SSL (TLS) — Transport Layer Security. Это наиболее безопасный и рекомендуемый метод. Для шифрования всего трафика между клиентом и сервером используется протокол TLS. Сервер обязан подтвердить свою подлинность с помощью цифрового сертификата. Это предотвращает атаки MiTM, так как клиент может проверить, что сертификат сервера действителен и выдан доверенным центром .

Поддерживает Network Level Authentication (NLA), что позволяет выполнить аутентификацию пользователя до установки полноценного сеанса (экономит ресурсы и блокирует атаки на отказ в обслуживании) .

В современных версиях Windows и в документации Microsoft под "SSL (TLS 1.0)" подразумевается использование инфраструктуры TLS. Хотя в названии часто фигурирует "TLS 1.0", система будет использовать наиболее высокую версию TLS, поддерживаемую как клиентом, так и сервером (например, TLS 1.2 или 1.3) . Вам потребуется установить сертификат на сервер (можно использовать самозаверяющий сертификат, но для корпоративной среды рекомендуется сертификат от внутреннего центра сертификации или публичного поставщика).

Negotiate (Согласование). Это значение по умолчанию, которое обеспечивает баланс между безопасностью и совместимостью. Сервер автоматически определяет возможности клиента. Сначала он пытается использовать наиболее безопасный доступный метод (SSL/TLS). Если клиент не поддерживает TLS, система "откатывается" (fallback) к менее безопасному методу — нативному RDP Security Layer.

Удобно для сред, где есть смесь старых и новых клиентов. Вы не будете уверены до конца, какой именно уровень безопасности используется в данный момент. Если клиент старый, сессия может установиться, но будет уязвима .

Создает ложное чувство безопасности. Атакующий потенциально может "понизить" уровень безопасности до слабого RDP (downgrade attack), заставив клиента сообщить, что он не поддерживает TLS .

RDP Security Layer (Уровень безопасности RDP). Это нативный и наименее безопасный метод. При его выборе для шифрования трафика используется встроенный протокол RDP. Шифрование выполняется самой службой удаленных рабочих столов. В зависимости от дополнительных настроек (уровень шифрования) может использоваться 56-битное или 128-битное шифрование. Сервер не проходит аутентификацию. Клиент не может проверить, подключается ли он к легитимному серверу или к атакующему, подменившему адрес .

Не работает с Network Level Authentication (NLA). Подключение происходит только после установки сеанса (Post-connection), что менее безопасно .

Уязвим для атак "man-in-the-middle" (MiTM), так как отсутствует проверка подлинности сервера. Не рекомендуется к использованию, за исключением случаев, когда необходимо подключение к устаревшим системам (например, Windows Server 2003).

RDP

В дополнении к уровню безопасности можно выбрать уровень шифрования соединения. Доступны следующие виды шифрования:

  • Low. Данные, отправляемые от клиента на сервер, шифруются с использованием 56-битного шифрования. Данные, отправляемые от сервера клиенту, не шифруются.
  • Client Compatible. Шифрует взаимодействие между клиентом и сервером с максимальной стойкостью ключа, поддерживаемой клиентом. Используйте этот уровень, когда сервер терминалов работает в среде со смешанными или устаревшими клиентами.
  • High. Шифрует взаимодействие между клиентом и сервером с использованием 128-битного шифрования. Используйте этот уровень, когда клиенты, подключающиеся к серверу терминалов, также поддерживают 128-битное шифрование. Когда шифрование установлено на этом уровне, клиенты, не поддерживающие его, не смогут подключиться.
  • FIPS Compliant. Все данные между клиентом и сервером шифруются и дешифруются с использованием алгоритмов шифрования, соответствующих Федеральным стандартам обработки информации (FIPS). Стандарты FIPS 140-1 (1994) и его преемник FIPS 140-2 (2001) описывают требования правительства США к шифрованию.

Диалоговое окно свойств RDP-Tcp, доступ к которому осуществляется через оснастку Remote Desktop Session Host, позволяет настроить уровень шифрования.

Параметры аутентификации и шифрования RD Session Host также можно настроить, применив следующие параметры групповой политики:

  • Set Client Connection Encryption Level (Задать уровень шифрования подключения клиента). Политика используется для управления уровнем шифрования. Если ее активировать, все соединения должны использовать указанный уровень шифрования (по умолчанию – High).
  • Server Authentication Certificate Template (Шаблон сертификата аутентификации сервера).
  • Require User Authentication For Remote Connections By Using Network Level Authentication (Требовать аутентификации пользователя для удаленных подключений с помощью аутентификации на сетевом уровне). Политика включает требование NLA для всех соединения с терминальным сервером (клиенты без поддержки NLA подключиться не смогут).

Для повышения уровня безопасности всех подключений следует использовать механизм аутентификации на уровне сети (NLA). При таком подходе пользователь проходит проверку подлинности на сервере узла сеансов RD еще до установки сеанса. Это позволяет защитить сервер от избыточной нагрузки, вызванной обработкой сеансов, инициируемых злоумышленниками или программами-ботами.

Теги

 

Похожие материалы

Средство удаления вредоносных программ Windows

В операционной системе Windows имеется встроенное средство для удаления вредоносных программ — Microsoft Windows Malicious Software Removal Tool (MSRT). MSRT выполняет регулярное сканирование компьютеров с Windows на наличие наиболее распространенных угроз, при этом не имеет значения, установлен у вас сторонний антивирус или нет.

Теги

Максимальный срок жизни пароля учётной записи контроллера домена

Любая учётная запись компьютера в домене содержит атрибут с паролем, и автоматически обновляет его по инициативе локального компьютера

Теги