Атакуващи компрометираха доставчик на управлявани телекомуникационни услуги, като експлоатираха уязвимости в системите за централизирано управление и защитни стени на Fortinet, след което внедриха PEERSTITCH – прикрит зловреден имплант, който се изпълнява в рамките на процесите на FortiGate.

От Unit 42 съобщават, че активността е започнала с пробив в устройство FortiManager и е изложила на риск конфигурации и чувствителни данни, свързани с над 500 управлявани защитни стени FortiGate.

Изследователите посочват, че това излагане на данни не потвърждава, че защитните стени на клиентите също са били компрометирани. При проникването през септември 2024 г. атакуващите са експлоатирали CVE-2024-47575, известна още като FortiJump, срещу FortiManager.

Уязвимостта е позволявала на неавтентифициран отдалечен атакуващ да изпраща специално модифицирани заявки през канала за управление на устройството и да изпълнява команди. От Unit 42 докладват, че атакуващите са регистрирали фалшиво устройство, създали са архив и са го откраднали.

Архивът е включвал конфигурации на защитни стени, мрежови детайли, идентификационни данни и криптографски материали за автентификация. Анализатори от Unit 42 идентифицираха PEERSTITCH при разследването на проникването, което проследяват като CL-STA-0954, известно още като UNC5820.

Техният технически доклад за импланта за FortiGate описва многоетапна операция, преминала от компрометиране на FortiManager към използване на идентификационни данни, мрежов мониторинг и внедряване на зловреден софтуер.

Откраднатият архив е предоставил на атакуващите карта на управляваната среда: серийни номера на устройства и публични IP адреси, мрежови маршрути, правила на защитните стени и релации за управление.

Той също така е съдържал криптирани административни и VPN идентификационни данни, както и сертификати, използвани за установяване на доверие между FortiManager и управляваните устройства. От Unit 42 посочват, че изследователите са успели да възстановят административни и VPN пароли от откраднатите конфигурационни файлове.

След период на неактивност атакуващите са използвали компрометираната платформа за управление, за да приложат неоторизирани настройки за прихващане на пакети към част от управляваните защитни стени.

Преглед на проникването (Източник – Unit42)
Преглед на проникването (Източник – Unit42)

Тези правила са наблюдавали некриптиран HTTP трафик и избрани услуги, включително отдалечена администрация и откриване на устройства в мрежата. Изследователите са наблюдавали и прихващания, насочени към трафик на TFTP, RADIUS и LDAP, които биха могли да разкрият файлове, данни за автентификация и дейност в директориите.

Хакери експлоатират уязвимости във Fortinet

Използвайки възстановените идентификационни данни, атакуващите са отворили неоторизирани VPN сесии към FortiGate и са достигнали до вътрешни зони за управление на мрежата.

Операцията показва как компрометирането на система за централизирано управление може да изложи на риск други свързани устройства: атакуващите са използвали откраднати материали за автентификация и информация за устройствата, за да продължат дейността си отвъд първото устройство.

Cybersecurity News вече е отразявал експлоатираната zero-day уязвимост във FortiManager и масовото компрометиране на устройства FortiManager, които предоставят предистория за по-ранната експлоатация на CVE-2024-47575.

Блок-схема на активността на PEERSTITCH (Източник – Unit42)
Блок-схема на активността на PEERSTITCH (Източник – Unit42)

От Unit 42 казват, че атакуващите са експлоатирали втори недостатък, CVE-2025-61624, чрез функцията system.auto-script на FortiOS. Проблемът с обхождането на директории (path traversal) е позволявал на автентифициран администратор да записва файлове извън предвидената директория, като скриптът се изпълнява с права на root.

Този достъп е помогнал на атакуващите да преминат от ограничен административен интерфейс към контрол над базовата операционна система на защитната стена.

Атакуващите са използвали низ за обхождане на директории в auto-script обект, за да поставят зареждаща програма на избрани устройства. Зареждащата програма е изтеглила няколко файла, включително JavaScript и WebAssembly компоненти, както и нативен изпълним файл за ARM64 с име lldprx.

След определено забавяне скриптът за внедряване е стартирал изпълнимия файл, който е потърсил два процеса на FortiOS: miglogd, отговарящ за регистрирането на събития, и iked, който управлява функциите на IKE и IPsec VPN.

Инжекторът се е прикачил към двата процеса и е създал 16-килобайтова област в паметта с права за четене, запис и изпълнение. Той е разположил своя зловреден код там и е променил пътищата на изпълнение в системните демони.

След това PEERSTITCH е използвал паметта на процесите, за да предава сесийни тагове между miglogd и iked. Когато VPN трафикът е съвпадал с определени маркери, имплантът е можел да следва алтернативен път на изпълнение на кода, заобикалящ стандартните проверки за сигурност на FortiOS.

Този дизайн прави импланта труден за откриване при рутинни проверки. Той не оставя постоянен бинарен файл със зловреден софтуер на диска, не отваря слушащ порт и не осъществява собствена изходяща връзка. Вместо това той скрива активността си вътре в легитимни системни процеси и техния съществуващ трафик.

Втори канал и опити за прикриване на дейността

Изследователите са открили също, че атакуващите са злоупотребили с модула mod_md на Apache, който поддържа автоматизирано управление на сертификати, за да конфигурират обратна обвивка (reverse shell).

Те са променили конфигурацията така, че дейността по валидиране на сертификати да може да изпълнява команди през Node.js и многократно да се свързва с инфраструктурата на атакуващите. Това е осигурило на атакуващите отделен маршрут за дистанционен контрол паралелно с импланта, базиран в оперативната памет.

За да затруднят разследването, атакуващите са спрели услугите за регистриране на събития, изчистили са регистрационните файлове за сривове, премахнали са нелегитимните акаунти и auto-script обекти и са заменили зловредния конфигурационен файл на Apache с безобидно изглеждащ текст. Инжекторът lldprx също така е изтрил собствения си файл и е прекратил междинния процес преди да излезе.

Организациите трябва да прегледат записите на FortiManager и FortiGate за неочаквани регистрации на устройства, непознати администраторски акаунти, подозрителни VPN сесии и auto-script записи, съдържащи низове за обхождане на директории като ../../.

Те трябва да сравнят конфигурациите на защитните стени с надеждни резервни копия и да третират идентификационните данни, сертификатите и материалите за автентификация, съхранявани на компрометиран сървър за управление, като компрометирани.

Cybersecurity News също така е отразявал изтичане на конфигурации от защитни стени FortiGate – напомняне, че откраднатите настройки на защитна стена могат да разкрият идентификационни данни и архитектурата на мрежата.

За специфично търсене на PEERSTITCH, Unit 42 препоръчва преглед на картите на паметта на miglogd и iked за анонимни 16-килобайтови области с права за четене, запис и изпълнение. Разследващите трябва също така да проверяват за кръпки в паметта при изброените по-долу отмествания, междупроцесни записи в /proc/<pid>/mem, сривове на съответните демони и подозрителни auto-script обекти.

Индикатори за компрометиране (IoCs):-

ТипИндикаторКонтекст
SHA-256b9fb0b27ddd59b58d3ae53c7227298a3e0de1e6f868b9429ae21533bb9cd1e70PEERSTITCH ARM64 инжектор
SHA-256829b1cd270b30565739a478441833f49f10a49bd06f0d18cc96c8ae4a0431f11ARM64 начален зареждащ модул (bootstrap) за съпоставяне на паметта
SHA-256bd064244dad748cf2a44074bee56f5bfab4a2b18ee944b75d1b3febd4c1fe02aДанни за инжектиране на основно прехващане (core hook)
SHA-2569c4c4436ff5cdf0d6d68f5108031cbf3708a095cde4ef8c09316af7a7110437eСкрипт за междинно зареждане (staging) и подготовка
SHA-256fc1b10c58057ef9f1f9a1e2a3d4a1c89f43b0ead451398c70ed7a6e0312b36eeОркестратор за внедряване чрез Node.js
SHA-256f84eea718526706afdf2d1a2774fab76ecb11c18fb61995a37be8249c5e379abСреда за изпълнение на Emscripten JavaScript
SHA-256b7ae166fd49a7ecfe6322a80b8aa56d6aa0825d8f5d106dab2e4fb7d14ce15a8Emscripten WebAssembly модул
SHA-2568d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92Артефакт за споделена тайна по време на изпълнение (runtime shared-secret)
IP адрес23.240.77[.]233Хостинг на инсталатор и зловреден софтуер; ACME активност
IP адрес47.18.167[.]159Хостинг на инсталатор и зловреден софтуер
IP адрес45.32.41[.]202Неоторизирано FortiGate устройство, регистрирано във FortiManager
IP адрес198.199.122[.]22По-късен IP адрес, използван за активност на неоторизираното устройство
URLhxxp[:]//23.240.77[.]233:8085/pM.jsPEERSTITCH стейджър (stager)
URLhxxp[:]//47.18.167[.]159:8085/pM.jsPEERSTITCH стейджър (stager)
URLhxxp[:]//23.240.77[.]233:8084/directoryАктивност на ACME сървър
URLhxxp[:]//23.240.77[.]233:8084/acme/new-acctРегистрация на ACME акаунт
URLhxxp[:]//23.240.77[.]233:8084/acme/order/11111Активност по ACME заявка
URLhxxp[:]//23.240.77[.]233:8084/acme/authz/1Активност по ACME оторизация
URLhxxp[:]//23.240.77[.]233:8084/acme/finalize/61924744/774083503Активност по финализиране на ACME
Файл/пътlldprx, pM.js, index.js, index.wasm, ipssem.jsКомпоненти на зловредния софтуер и за внедряване
Файл/път../../../../setupИме на auto-script при обхождане на директории (path-traversal)
Файл/път../../tmp/apache2/conf/md-acme.confПът към конфигурация на Apache при обхождане на директории (path-traversal)

Забележка: IP адресите и домейните са умишлено обезвредени (defanged, напр. [.]), за да се предотврати случайно разрешаване на имена или създаване на хипервръзки. Възстановявайте адресите (re-fang) само в рамките на контролирани платформи за анализ на заплахи като MISP, VirusTotal или вашата SIEM система.