Tech Threat Lab
TTL

Unit 42 описала имплант PEERSTITCH для FortiOS после компрометации FortiManager

Unit 42 описала имплант PEERSTITCH для FortiOS после компрометации FortiManager

Исследователи Unit 42 описали имплант PEERSTITCH для FortiOS, который внедряется в память системных процессов и может менять обработку определённых SSL/VPN-сеансов. Данных о затронутых организациях в России или СНГ в исследовании нет: активность обнаружили при длительном проникновении в сеть провайдера управляемых телекоммуникационных услуг в сентябре 2024 года.

PEERSTITCH связывают с кластером CL-STA-0954, который также отслеживается как UNC5820. Unit 42 оценивает его как предполагаемого злоумышленника высокого уровня. В описанном инциденте первоначальный доступ был получен через критическую уязвимость FortiManager FortiJump — CVE-2024-47575.

От FortiManager к управляемым FortiGate

После компрометации FortiManager атакующие похитили архив с актуальными конфигурациями, криптографическими материалами и файлами баз данных, относящимися более чем к 500 управляемым межсетевым экранам FortiGate. В архиве находились:

  • серийный номер FortiManager и сведения о его связях с подключёнными устройствами;
  • текущие конфигурации более 500 FortiGate — как во внутренней инфраструктуре провайдера, так и в сетях его клиентов;
  • базы SQLite для централизованного управления;
  • перечень более чем 500 серийных номеров FortiGate с соответствующими публичными IP-адресами;
  • карты внутренней топологии, таблицы маршрутизации и конфигурации интерфейсов;
  • зашифрованные административные, локальные и SSL/VPN-учётные данные;
  • зашифрованные материалы доверия, включая открытые сертификаты и закрытые ключи.

По данным Unit 42, похищенную информацию применяли для сетевой разведки, закрепления, перехвата трафика, создания несанкционированных SSL/VPN-сеансов FortiGate на периферийных устройствах и развёртывания бэкдоров. Для установки PEERSTITCH операторы использовали CVE-2025-61624: при наличии привилегированного доступа она позволяла произвольно записывать или удалять файлы.

CVE-2025-61624 получила оценку CVSS 5,4. Это ошибка обхода путей в интерпретаторе командной строки FortiOS, FortiPAM, FortiProxy и FortiSwitchManager. При наличии привилегированного доступа специально подготовленные аргументы к существующим командам позволяют произвольно записывать или удалять файлы. Fortinet исправила проблему в апреле 2026 года.

Имплант без постоянных файлов и отдельного сетевого канала

PEERSTITCH представляет собой 64-разрядный исполняемый файл Linux для ARM64, написанный на C. Как отмечают исследователи, внедрённый в память имплант не оставляет постоянных бинарных файлов на диске, не открывает порты для приёма соединений и не создаёт собственных исходящих сетевых подключений. Вместо этого он использует трафик, который генерируют штатные процессы скомпрометированного устройства.

На этапе доставки и развёртывания автоскрипт, связанный с PEERSTITCH, загружает с внешнего сервера 23.240.77[.]233:8085 пять компонентов. Этот адрес относится к доставке компонентов загрузчиком, а не к сетевому каналу уже внедрённого в память импланта:

  • pM.js — самоудаляющийся сценарий подготовки среды;
  • a.js, сохраняемый как index.js, — модуль среды выполнения JavaScript на Emscripten;
  • a.wasm, сохраняемый как index.wasm, — скомпилированный модуль WebAssembly;
  • b.js, сохраняемый как ipssem.js, — сценарий координации развёртывания;
  • dd, сохраняемый как lldprx, — нативный ELF-инжектор для ARM64, составляющий ядро PEERSTITCH.

После задержки ipssem.js запускает lldprx. Инжектор модифицирует память двух ключевых демонов FortiOS: /bin/miglogd и /bin/iked. Он находит связанные с ними запущенные процессы, анализирует структуру их памяти, присоединяется к ним через ptrace и останавливает выполнение с помощью PTRACE_INTERRUPT. Затем lldprx выделяет исполняемую память, записывает туда вредоносный код и перенаправляет поток выполнения через внедрённый код.

При выборе SIEM-платформы для централизованной корреляции журналов можно отдельно изучить Security Capsule SIEM и сопоставить её с требованиями своей инфраструктуры.

Цель этого этапа Unit 42 называет созданием скрытого резидентного в памяти канала обмена между двумя легитимными процессами FortiOS. Обычное сетевое соединение или файл для этого не используются: штатные процессы одновременно служат каналом и прикрытием для обхода механизмов обнаружения.

Метки в трафике и альтернативная обработка VPN

Внедрённый в miglogd хук распознаёт маркеры в данных, проходящих через процесс. Исследователи выделили две конкретные метки:

  • значение TCP-порта 8550, встроенное в данные трафика и не являющееся портом для приёма соединений;
  • IP-адрес 169[.]254[.]0[.]1, используемый как локальный идентификатор канала для сопоставления шаблонов.

При обнаружении шаблона miglogd передаёт связанный с ним токен сеанса или идентификатор в iked. Хук в iked ищет этот идентификатор при обработке последующих VPN-сеансов. Если метка присутствует в буфере вставки конкретного VPN-сеанса, запускается альтернативный путь выполнения, обходящий стандартные проверки безопасности FortiOS.

Таким образом, хуки в miglogd и iked меняют обработку отмеченных VPN-сеансов, а не поднимают отдельный сетевой сервис управления имплантом.

Помимо PEERSTITCH операторы развернули отдельный канал управления. На FortiGate применялся встроенный модуль Apache mod_md для запуска обратной SSH-оболочки. Также, по данным Unit 42, атакующие выдавали себя за платформу FortiManager, чтобы получать данные с управляемых межсетевых экранов на других узлах целевой сети. Исследователи расценили это как признак глубокого знания архитектуры устройств Fortinet, внутреннего устройства FortiOS и протоколов её управления.

Версия об имитации FortiManager и сокрытие следов

Unit 42 допускает, но не считает окончательно установленным, что для имитации FortiManager могли использоваться CVE-2024-26009 и CVE-2024-26008. Эксплуатация этих уязвимостей требует регистрации устройства в FortiGate Cloud/FortiCloud SSO. Ни один из затронутых межсетевых экранов в исследовании там зарегистрирован не был, что ограничивает эту версию.

CL-STA-0954 также противодействовал расследованию: прекращал генерацию syslog, очищал журналы сбоев, нарушал регистрацию телеметрии и автоматически удалял поддельные учётные записи администраторов и объекты автоскриптов после выполнения.

По выводу Unit 42, инцидент показывает риск компрометации нижестоящих сетей через централизованные экосистемы управления периферийными устройствами. PEERSTITCH в этой схеме выступает одноразовым инжектором: он избегает остаточных артефактов на диске и создаёт скрытый межпроцессный мост в памяти. Сохранение долговременного доступа в кампании обеспечивалось также иными средствами.

Практический вывод для организаций с FortiManager и управляемыми FortiGate — учитывать не только состояние исправления CVE-2025-61624, закрытой Fortinet в апреле 2026 года, но и последствия возможной компрометации централизованной управляющей системы. В описанном случае доступ к ней открыл сведения о конфигурациях, адресах, учётных данных и криптографических материалах сотен устройств.