Злоумышленники используют штатную функциональность ViPNet MFTP для атаки на российские организации

information security

Специалисты экспертного центра безопасности Positive Technologies (PT ESC) зафиксировали признаки атаки, реализуемой через легитимную службу ViPNet MFTP. Инцидент затрагивает как минимум восемь организаций. Хронология атаки охватывает период с 1 июня по 14 июля 2026 года. Основной вектор - эксплуатация штатного транспортного протокола MFTP для доставки вредоносного кода.

Описание

Механизм атаки основан на передаче между клиентами ViPNet файла-конверта с расширением .ctl. Внутри него находится вредоносная библиотека wtsapi32.dll. Загрузка этой библиотеки происходит через компонент службы обновления ПО ViPNet - исполняемый файл Itcsrvup64.Exe. Для этого применяется техника перехвата DLL (DLL Hijacking), при которой система ошибочно загружает вредоносную библиотеку вместо легитимной. Библиотека сохраняется на файловую систему через механизм обхода пути (Path Traversal). Итоговый путь на диске выглядит следующим образом: C:\ProgramData\InfoTeCS<9-значный_идентификатор_устройства>./../../../../program files (x86)/infotecs/vipnet update system/wtsapi32.dll.

Вредоносная библиотека представляет собой загрузчик, хранящий в своей .data-секции исполняемый файл в формате DLL с изменёнными магическими байтами заголовка. При запуске загрузчик проверяет контекст процесса. Если он запущен не от имени svchost.exe, вредонос находит работающий процесс svchost.exe с параметром netsvcs в командной строке и внедряет в него указанную библиотеку.

Основная функция загрузчика - работа в режиме прокси-сервера для перенаправления сетевого трафика. Кроме того, он способен загружать дополнительные DLL-библиотеки в адресное пространство своего процесса и выполнять их. Управление командами осуществляется через диспетчер IOCTL-запросов. Этот диспетчер управляет таблицей активных подключений путём перехвата функций WinAPI: NtDeviceIoControlFile, closesocket и shutdown. С помощью библиотеки Detours таблица блокирует преждевременное закрытие сетевых сокетов. При получении запроса проверяется код операции: 0x12037 (AFD_GET_TDI_HANDLES) для регистрации нового сокета и 0x12017 (AFD_RECV) для инициации обработки входящего трафика. Дескрипторы сохраняются в таблицу, каждая запись занимает 8344 байта. При обработке кода 0x12017 вредонос записывает идентификаторы потока и процесса в файл C:\users\public\tesh4RPC.txt в формате threadid:pid.

Параллельно вредоносное ПО разворачивает TCP-сервер на портах 5003 и 5060. В бесконечном цикле оно принимает входящие подключения. Для каждого клиента выделяется память под структуру сокета и создаётся отдельный поток. Обработчик через функцию select с таймаутом 200 микросекунд непрерывно опрашивает сокет и читает данные порциями до 1024 байт через функцию recv. После установки соединения выполняется "рукопожатие": отправляются два байта 0x0502, а в ответ ожидается строка ASDFASFSAFASDF. При получении данных в формате "<данные>" вредонос создаёт новые сокеты и перенаправляет трафик между ними, работая как прокси. Если поступает исполняемый файл, он загружается в память процесса и запускается в отдельном потоке.

Особый эпизод произошёл в конце мая 2026 года. На клиентские устройства ViPNet был доставлен пакет обновления в виде .lzh-файла, содержащего образцы вредоносного ПО: SetupCheck.dll и SetupChk.exe.

SetupChk.exe считывает информацию из ключа реестра Windows SOFTWARE\Wow6432Node\InfoTeCS\ITCSShared\AuthInfo. Затем он определяет версию клиента по ключу SOFTWARE\Infotecs\FeaturesAndComponents\Monitor_Feature, ожидая версию 4.5. Функционал этого компонента включает три действия. Первое - зачистка журналов InfoTeCS: удаляются файлы UpdateSystem.Journal, updateservice.log.txt, mftp.debug.log и mftp.log. Второе - сбор информации о системе: список процессов, сетевые соединения, перечень установленного ПО. Третье - формирование вредоносного конверта с именем m02smnrf.ctl.

В ходе расследования на скомпрометированных узлах ViPNet также обнаружены другие вредоносные компоненты. Среди них загрузчик Donnect (файл mocdng.dll) и бэкдор ShadowRelay (файл Diagnosis.exe). Конфигурация обнаруженного экземпляра ShadowRelay включает следующие параметры: режим клиента, протокол TCP, адрес сервера 154.89.152[.]59 и порт 443, период переподключения 459 секунд, шифрование AES с ключом " ]zf,.Hso'!x3|ezz/hzHzxa(P=x.bB.r", а также метку окружения и имя службы svcsvc. В бэкдоре включена защита от отладки, автоматический запуск отключён.

Согласно анализу экспертов PT ESC, для выявления инцидента рекомендуется выполнить на узлах ViPNet две проверки. Первая - поиск вредоносной библиотеки или признаков использования техники обхода пути. Необходимо запустить PowerShell-команду:

В случае компрометации в логах отобразится запись о создании файла wtsapi32.dll с указанием размера 219136 байт.

Вторая проверка - поиск событий получения вредоносного обновления. Команда:

При наличии признаков в логах будет видно извлечение файлов setupcheck.dll и setupchk.exe из пакета обновления.

Для нейтрализации угрозы необходимо немедленно остановить и отключить службу ViPNet система обновления на каждом устройстве, где установлено ПО ViPNet. Это делается либо через графический интерфейс (services.msc, найти службу ViPNet Update System, остановить и установить тип запуска "Отключена"), либо через PowerShell: "Stop-Service -Name "itcsrvup" -Force" и "Set-Service -Name "itcsrvup" -StartupType Disabled". Дополнительно требуется отключить на координаторах HW и xFirewall службу MFTP командой "mftp stop". Также следует отслеживать появление индикаторов компрометации в сети и своевременно обновлять компоненты ПО ViPNet.

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

IPv4

  • 123.58.203.41
  • 154.89.152.59
  • 31.57.35.21
  • 5.39.253.206

MD5

  • 5384157b66e9976c9a1c8429d236b512
  • 82dd0af848118009709639d75ca43bd9

SHA256

  • 13d8d4f4fa483111e4372a6925d24e28f3be082a2ea8f44304384982bd692ec9
  • 4921e2f1fb2ef81862e6727bbac653c8e66fd2132529205798788981905151fc
  • 5e462c89def65cbdddbd3ae78a1e281400199143af330e976384416cf466b9d8
  • 68b4c76a2280e3c31130d4de12b12dfd479a476f347f5b4a58cb2483d74aba7e
  • 7d0e3efe656a28251e6460af1baa489ea6a07053a4bc6578edba659ab28afd5d
  • 841aea34ca81577468c3a5ab3039370a83cd9dca7ad95af092a9a22b661ec3f1
  • 8b089163edb36e7a65baccb8ab317895162057a1acb2a5dc59dffd3d03c7cdb5
  • b8192bb83d5d33bf6e32879d2bfb783cbbd3df6ded23206867161f091897d4c4
  • bc34b8d8bc320c5fa1d280e6a7ca876950047d2ee0520b0f5e49bb49481e987d
  • c2f2a6a28d41ac243455a30c4ab39af13ed647e43d00eb69c14482e9314e9140
  • e19adeaaa9f19f2cf0460d9f61ff54e90b5de30c2cd8d1db04fdf8afaa243295
  • ffdc194775b2904564bbbd1cf0eb01d1a01f83ef5197d1612b6e2d69de7a4732

Комментарии: 0