07 Апр, 2023

Протокол удаленного рабочего стола (RDP)

Penetration Testing as a service (PTaaS)

Tests security measures and simulates attacks to identify weaknesses.

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

Общие порты RDP

В дополнение к порту 3389, следующие порты также могут использоваться RDP:

  • TCP 3388: Этот порт используется RDP в среде с балансировкой нагрузки, где несколько серверов предоставляют службы удаленного рабочего стола.

  • TCP 3387: Этот порт используется RDP для дополнительного порта прослушивания в случае, если основной порт прослушивания (3389) недоступен.

  • TCP 3390: Этот порт иногда используется в качестве альтернативного порта для RDP в некоторых конфигурациях VPN.

Стандартные команды от неавторизованных

Windows – mstsc /v:54.208.6.83:3389

IP-адрес Linux – rdesktop

auxiliary/scanner/rdp/rdp_scanner

Разведывательная или нестандартная команда

nmap -p3389 –script rdp-enum-encryption 10.0.0.4

(Версия 5.2 RDP в конфигурации по умолчанию уязвима для mitm)

nmap -p 3389 –script rdp-ntlm-info <target>

Грубое силовое подключение

https://github.com/vanhauser-thc/thc-hydra

hydra -t 1 -V -f -l administrator -P wordlist.txt rdp://192.168.0.100

Запуск эксплойтов

auxiliary/scanner/rdp/ms12_020_check (checked)

Инструменты для использования протокола RDP

Ручные Инструменты:

  • Диспетчер подключений к удаленному рабочему столу Microsoft (RDCMan) – RDCMan - популярный ручной инструмент, используемый для управления несколькими подключениями к удаленному рабочему столу. Это позволяет вам просматривать несколько сеансов удаленного рабочего стола и управлять ими из одного интерфейса.

  • mstsc.exe – Это клиентское приложение для подключения к удаленному рабочему столу по умолчанию, встроенное в Windows. Это позволяет вам подключаться к удаленному рабочему столу Windows или серверу.

  • Remote Desktop Manager – Это сторонний инструмент управления подключением к удаленному рабочему столу, который позволяет вам управлять несколькими удаленными рабочими столами и подключаться к ним из одного интерфейса.

  • FreeRDP – Это реализация протокола удаленного рабочего стола (RDP) с открытым исходным кодом, которая позволяет вам подключаться к удаленному рабочему столу Windows или серверу с компьютера Linux.

  • rdesktop – Это еще один RDP-клиент с открытым исходным кодом для Linux, который позволяет вам подключаться к удаленному рабочему столу Windows или серверу.

Автоматизированные инструменты:

  • Ncrack – Ncrack - это инструмент для взлома сетевой аутентификации, который можно использовать для проверки аутентификации RDP. Он поддерживает RDP версий 4 и 5.

  • Hydra – Hydra - это инструмент для взлома сетевой аутентификации, который поддерживает аутентификацию RDP. Его можно использовать для проверки на наличие слабых паролей при соединениях RDP.

  • Medusa – Medusa - это еще один инструмент для взлома сетевой аутентификации, который поддерживает аутентификацию RDP. Он предназначен для параллельного тестирования нескольких удаленных серверов и служб.

  • TSGrinder – TSGrinder - это инструмент, специально разработанный для принудительного RDP-подключения. Он может проверять наличие слабых паролей и пытаться получить доступ к удаленным системам.

  • RDPY – RDPY - это инструмент тестирования RDP на проникновение с открытым исходным кодом, который можно использовать для проверки RDP на наличие уязвимостей и слабых мест в системе безопасности.

  • RDPScan – RDPScan - это инструмент командной строки, который сканирует сети на наличие открытых серверов RDP. Он может быть использован для определения потенциальных целей для тестирования и эксплуатации RDP.

  • RDPTT – RDPTT (RDP Security Tool) - это инструмент тестирования безопасности RDP, который можно использовать для проверки уязвимостей и недостатков безопасности в соединениях RDP.

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

  • RDPY-Tools – RDPY-Tools - это набор инструментов тестирования безопасности RDP, которые можно использовать для проверки RDP на наличие уязвимостей и слабых мест в системе безопасности.

  • RDPScanGUI – RDPScanGUI - это графический пользовательский интерфейс (GUI) для сканирования и тестирования RDP. Это позволяет вам легко сканировать сети на наличие открытых RDP-серверов и проверять их на наличие уязвимостей.

Последние пять известных CVE для RDP

 CVE-2023-20123: Уязвимость в режиме автономного доступа двухфакторной аутентификации Cisco Duo для macOS и аутентификации Duo для входа в систему Windows и RDP может позволить злоумышленнику, не прошедшему проверку подлинности, воспроизвести действительные учетные данные сеанса пользователя и получить несанкционированный доступ к уязвимому устройству macOS или Windows. Эта уязвимость существует из-за неправильного истечения срока действия учетных данных сеанса. Злоумышленник может воспользоваться этой уязвимостью, воспроизведя ранее использовавшиеся коды многофакторной аутентификации (MFA), чтобы обойти защиту MFA. Успешный эксплойт может позволить злоумышленнику получить несанкционированный доступ к уязвимому устройству. 

• CVE-2022-24883: FreeRDP - это бесплатная реализация протокола удаленного рабочего стола (RDP). До версии 2.7.0 проверка подлинности на стороне сервера с использованием файла `SAM` могла быть успешной для недействительных учетных данных, если сервер настроил недопустимый путь к файлу `SAM`. Клиенты, основанные на FreeRDP, не затронуты. Затронуты реализации сервера RDP, использующие FreeRDP для аутентификации в файле `SAM`. Версия 2.7.0 содержит исправление этой проблемы. В качестве обходного пути используйте пользовательскую аутентификацию через `HashCallback` и / или убедитесь, что настроенный путь к базе данных `SAM` является действительным и в приложении остались дескрипторы файлов. 

 CVE-2022-24882: FreeRDP - это бесплатная реализация протокола удаленного рабочего стола (RDP). В версиях до 2.7.0 аутентификация NT LAN Manager (NTLM) не прерывается должным образом, когда кто-либо вводит пустое значение пароля. Эта проблема затрагивает реализации сервера RDP на основе FreeRDP. Клиенты RDP не затронуты. Уязвимость исправлена в FreeRDP 2.7.0. В настоящее время нет известных обходных путей. 

 CVE-2022-23613: xrdp - это сервер протокола удаленного рабочего стола с открытым исходным кодом (RDP). В затронутых версиях неполный поток целых чисел, приводящий к переполнению кучи на сервере sesman, позволяет любому злоумышленнику, не прошедшему проверку подлинности, который может получить локальный доступ к серверу sesman, выполнять код от имени root. Эта уязвимость была исправлена в версии 0.9.18.1 и выше. Пользователям рекомендуется выполнить обновление. Известных обходных путей не существует. 

 CVE-2022-23493: xrdp - это проект с открытым исходным кодом, который обеспечивает графический вход на удаленные компьютеры с использованием протокола Microsoft Remote Desktop Protocol (RDP). xrdp 

Полезная информация

– Подключение к удаленному рабочему столу: RDP использует программное обеспечение для подключения к удаленному рабочему столу, встроенное в операционные системы Windows, для установления удаленных подключений между компьютерами.

– Общий доступ к экрану: RDP позволяет пользователям делиться экраном своего рабочего стола с другими, что делает его полезным для удаленной совместной работы и поддержки.

– Многопользовательский доступ: RDP позволяет нескольким пользователям одновременно подключаться к одному и тому же удаленному рабочему столу и использовать его, обеспечивая совместную работу и удаленную поддержку.

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

– Шифрование: RDP использует шифрование для защиты сеанса удаленного рабочего стола и защиты данных от перехвата или подделки.

– Правила брандмауэра: Чтобы разрешить входящие подключения по протоколу RDP, брандмауэр Windows должен быть настроен так, чтобы разрешать трафик через порт 3389 (или настроенный порт RDP) как для TCP, так и для UDP трафика.

– Риски безопасности: RDP может быть уязвим для угроз безопасности, таких как атаки с использованием паролей методом перебора, атаки типа "человек посередине" и атаки типа "отказ в обслуживании". Важно должным образом защитить RDP, используя надежные пароли, ограничивая доступ к авторизованным пользователям и IP-адресам, а также используя другие меры безопасности, такие как VPN и двухфакторная аутентификация.

– RDP через VPN: использование VPN для подключения к RDP может обеспечить дополнительный уровень безопасности за счет шифрования всего трафика между локальным компьютером и удаленным рабочим столом или сервером.

– Альтернативы RDP: Существуют альтернативные протоколы удаленного рабочего стола и доступное программное обеспечение, такое как VNC (виртуальные сетевые вычисления) и TeamViewer.

Известные баннеры

“Службы удаленного рабочего стола” – Этот баннер может появиться во время сканирования портов или оценки уязвимости, указывая на то, что в целевой системе включен RDP.

“Службы терминалов MS” – Этот баннер может появляться в более старых версиях RDP, указывая на использование служб терминалов Microsoft.

“RDP-Tcp” – Этот баннер может появляться при просмотре открытых сетевых портов в системе, указывая на использование протокола RDP.

“Microsoft RDP 5.2” – Этот баннер может появляться в более старых версиях RDP, указывая на использование Microsoft RDP версии 5.2.

“Клиент служб терминалов Microsoft” – Этот баннер может отображаться в строке пользовательского агента клиента RDP, указывая на использование служб терминалов Microsoft.

Книги для изучения протокола удаленного рабочего стола (RDP)

“Службы удаленных рабочих столов для Windows Server 2008 R2: проектирование и развертывание виртуальных рабочих столов” Грег Шилдс: Эта книга посвящена проектированию и развертыванию виртуальных рабочих столов с использованием служб удаленных рабочих столов Windows Server 2008 R2.

“Службы удаленных рабочих столов Windows Server 2016: развертывание, администрирование и устранение неполадок” Эндрю Беттани и Аарон Паркер: Эта книга посвящена развертыванию, администрированию и устранению неполадок служб удаленных рабочих столов в Windows Server 2016.

“Освоение Windows Server 2012 R2” автор Марк Минаси: Эта книга охватывает широкий круг тем, связанных с Windows Server 2012 R2, включая службы удаленных рабочих столов.

“Службы удаленных рабочих столов: полное руководство по пониманию и внедрению служб удаленных рабочих столов в Windows” автор: Эрик Сирон и Криста Андерсон: Эта книга представляет собой всеобъемлющее руководство по пониманию и внедрению служб удаленных рабочих столов в Windows, охватывающее как проектирование, так и развертывание.

“Безопасность протокола удаленного рабочего стола (RDP): практическое руководство по защите сетевых ресурсов RDP” автор: доктор Эрик Коул: Эта книга посвящена безопасности протокола удаленного рабочего стола (RDP) и содержит практические рекомендации по защите сетевых ресурсов RDP.

“Устранение неполадок при подключении к службам удаленных рабочих столов” автор Шеннон Фриц: Эта книга посвящена устранению неполадок при подключении к службам удаленных рабочих столов на сервере Windows.

“Установка и настройка служб удаленных рабочих столов (RDS) для среды Windows Server 2012 R2” Брайан Свидергол и Нил Смит: В этой книге представлено пошаговое руководство по установке и настройке служб удаленных рабочих столов в Windows Server 2012 R2.

“Pro Windows Server: Службы удаленных рабочих столов” Тодд Лэмл и Дэвид Р. Миллер: В этой книге рассматриваются службы удаленных рабочих столов на Windows Server, включая установку, настройку и администрирование.

“Шлюз удаленного рабочего стола (RD Gateway) 2012 R2: Установка, настройка и устранение неполадок” автор Юрий Магалиф: Эта книга посвящена установке, настройке и устранению неполадок шлюза удаленных рабочих столов (RD Gateway) в Windows Server 2012 R2.

“RDP: Протокол удаленного рабочего стола – все, что вам нужно знать” автор Gerardus Blokdyk: В этой книге дается всесторонний обзор протокола удаленного рабочего стола (RDP) и рассматриваются такие темы, как безопасность, производительность и конфигурация.

Список полезной нагрузки для протокола удаленного рабочего стола (RDP)

  • Грубое принуждение учетных данных RDP: Эта полезная нагрузка включает в себя попытку принудительного ввода учетных данных для входа в RDP, обычно путем запуска сценария, который пробует различные комбинации имени пользователя и пароля.

  • Полезные нагрузки для использования RDP: Это полезные нагрузки, нацеленные на известные уязвимости в протоколе RDP, такие как BlueKeep (CVE-2019-0708) и DejaBlue (CVE-2019-1181, CVE-2019-1182, CVE-2019-1222, CVE-2019-1226).

  • Полезные нагрузки RDP Man-in-the-Middle (MITM): Эти полезные нагрузки включают перехват и изменение трафика RDP между клиентом и сервером для кражи данных или выполнения других вредоносных действий.

  • Полезные нагрузки для ведения кейлоггинга RDP: Эти полезные нагрузки включают в себя перехват нажатий клавиш, выполняемых пользователем во время сеанса RDP, что потенциально позволяет перехватывать конфиденциальную информацию, такую как пароли.

  • Полезные нагрузки удаленного выполнения кода RDP (RCE): Эти полезные нагрузки включают использование уязвимостей в службе RDP для выполнения произвольного кода в целевой системе, предоставляя злоумышленнику полный контроль над машиной.

Смягчение последствий

  1. Используйте сложные пароли, которые трудно угадать, и следите за тем, чтобы они регулярно менялись.

  2. NLA требует, чтобы пользователи проходили аутентификацию перед установлением сеанса RDP, что помогает предотвратить атаки методом перебора.

  3. Установите VPN-соединение перед подключением к RDP, так как это добавляет дополнительный уровень безопасности.

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

  5. Убедитесь, что служба RDP обновлена последними исправлениями безопасности, чтобы предотвратить использование известных уязвимостей.

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

  7. Требовать от пользователей предоставления второго фактора аутентификации, такого как токен или биометрические данные, для доступа к службе RDP.

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

Заключение

Протокол удаленного рабочего стола (RDP) является популярным протоколом для удаленного доступа, но представляет значительные риски для безопасности. Чтобы снизить эти риски, внедрите надежные пароли, NLA, VPN, ограничения доступа, регулярное исправление, мониторинг, MFA и хосты bastion. Будьте бдительны и в курсе последних тенденций в области безопасности и уязвимостей, чтобы эффективно защищать системы RDP.

Другие Услуги

Готовы к безопасности?

Связаться с нами