STOCKSTAY ще один день: новітнє доповнення до апарату розвідки Turla
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Група загроз Google Threat Intelligence Group виявила STOCKSTAY, багатокомпонентний .NET бэкдор, що використовується актором загроз Turla, пов’язаним з Росією. Шкідливе програмне забезпечення побудоване з модульною архітектурою, яка включає тунелер, оркестратор і компонент бэкдору, всі взаємодіють через захищені WebSockets. Воно призначене для підтримки довготривалих операцій кібершпигунства проти урядових і військових цілей.
Розслідування
GTIG провела глибокий аналіз екосистеми STOCKSTAY та відстежила її розвиток до грудня 2022 року. Дослідники картографували її модульні компоненти, вивчили використання екологічного кодування для дешифрування даних конфігурації та задокументували її перехід від маскування під утиліту для ринку акцій до обману, видаючи себе за інші нешкідливі додатки. Розслідування також виявило використання K1MORPHER для обфускації рядків і зв’язку з відомим інструментом KAZUAR Turla.
Пом’якшення
Організації повинні впроваджувати сильний моніторинг підозрілої поведінки .NET програм і незвичного трафіку WebSocket на незнайомі домени. Захист від початкового доступу через шкідливі RDP файли та зміцнення захисту електронної пошти від фішингу також критично важливі. Крім того, усунення вразливостей, таких як CVE-2025-8088 у WinRAR, може допомогти блокувати розгортання на основі експлуатації.
Реакція
Якщо активність STOCKSTAY виявлено, необхідно негайно ізолювати уражені хости, щоб зупинити подальшу команду і контроль (C2) і латеральний рух. Проведіть детальне судово-експертне розслідування, щоб визначити повний обсяг компрометації, з особливою увагою на несанкціоновані зміни в реєстрі та нові створені планові завдання. Також слід переглянути журнали мережі для довгострокових сесій WebSocket, а системи повинні бути перевірені на наявність компонентних файлів STOCKSTAY.
"flowchart TD step_initial_access["Початковий доступ: T1566 – Фішинг (цільові фішингові вкладення, такі як RDP файли, MSI або RAR; цільові фішингові посилання на скомпрометовані сайти)"] step_execution["Виконання: T1204.002 – Виконання користувачем: Шкідливий файл (HTA файли, RDP конфігурації); T1574.014 – Перехоплення потоку виконання: AppDomainManager (.NET навантаження); T1543 – Створення або модифікація процесу системи"] rules_for_execution("<b>Назва правила</b>: Підозріла поведінка маскування LOLBAS MSHTA оборонне усунення шляхом виявлення пов’язаних команд (через створення процесу)<br/><b>ID правила</b>: feb459cf-289a-41ab-9241-d8edc232c487") step_persistence["Стійкість: T1543 – Створення або модифікація процесу системи (записи автозапуску); T1133 – Зовнішні віддалені служби (довготривале з’єднання)"] step_defense_evasion["Ухилення від захисту: T1036 – Маскування (перейменування в нешкідливі утиліти); T1027.015 – Обфусковані файли або інформація: Стиснення; T1497.001/002 – Ухилення від віртуалізації/пісочниці через WMI"] step_discovery["Виявлення: T1012 – Запит реєстру; T1497.001 – Ухилення від віртуалізації/пісочниці (збір інформації про систему/апаратну частину через WMI)"] step_command_and_control["Командування і контроль: T1102.002/003 – Веб-сервіс: Двосторонній/Односторонній зв’язок (WebSocket через Render); T1568 – Динамічна резолюція"] rules_for_c2("<b>Назва правила</b>: Можлива спроба зловживання публічним вузлом Ethereum як каналом C2 (через запит DNS)<br/><b>ID правила</b>: 280e86bf-fad9-4b9c-8867-e2355e3f50ba") step_collection_exfiltration["Збір і ексфільтрація: T1560.002/003 – Архівування зібраних даних за допомогою бібліотеки або пользовательского методу (архіви ZIP у пам’яті)"] step_initial_access –>|веде_до| step_execution step_execution –>|дає_можливість| step_persistence step_execution -.->|виявляється_за| rules_for_execution step_persistence –>|веде_до| step_defense_evasion step_defense_evasion –>|дає_можливість| step_discovery step_discovery –>|веде_до| step_command_and_control step_command_and_control –>|дає_можливість| step_collection_exfiltration step_command_and_control -.->|виявляється_за| rules_for_c2 "
Потік атаки
Виявлення
Можлива спроба зловживання публічним вузлом Ethereum як каналом C2 (через запит DNS)
Перегляд
Підозріла поведінка маскування LOLBAS MSHTA оборонне усунення шляхом виявлення пов’язаних команд (через створення процесу)
Перегляд
Виявлення парсингу CryptoContainer і декодування K1MORPHER у STOCKSTAY Turla [Windows Sysmon]
Перегляд
Виявлення STOCKSTAY WebSocket C2 комунікації [Windows мережеве з’єднання]
Перегляд
Виявлення шкідливої діяльності STOCKSTAY [Windows створення процесу]
Перегляд
Виконання симуляції
Передумова: Перевірка телеметрії та базових даних має бути пройдена.
Обґрунтування: цей розділ деталізує точне виконання техніки зловмисника (TTP), розробленої для того, щоб запустити правило виявлення. Команди та опис МАЮТЬ безпосередньо відображати виявлені TTP та прагнути генерувати точну телеметрію, очікувану детекційною логікою. Узагальнені чи нерелевантні приклади призведуть до неправильного діагностування.
-
Сценарій атаки та команди: Зловмисник має намір встановити стійкість, використовуючи інструмент, що маскується під легітимний компонент оновлення Microsoft. Щоб уникнути виявлення, зловмисник перейменував свій бэкдор STOCKSTAY в
MicrosoftUpdateOneDrive.exeі помістив його в тимчасову директорію. Метою є виконати цей процес для ініціювання зворотної оболонки або командних і контрольних комунікацій (C2), покладаючись на “легітимну” назву, щоб обійти основний моніторинг процесів. -
Сценарій регресійного тесту:
# Сценарій симуляції: Виконання маскування STOCKSTAY $MaliciousName = "MicrosoftUpdateOneDrive.exe" $TargetDir = "$env:TEMPStockstaySim" # 1. Створення симульованої "шкідливої" директорії та файлу if (!(Test-Path $TargetDir)) { New-Item -Path $TargetDir -ItemType Directory -Force } $FakeBinary = Join-Path $TargetDir $MaliciousName # 2. Створення підробного виконуваного файлу (використовуючи перейменований cmd.exe для цілей симуляції) Copy-Item "C:WindowsSystem32cmd.exe" -Destination $FakeBinary -Force Write-Host "[+] Симуляція: Створено $FakeBinary" -ForegroundColor Cyan # 3. Виконання "шкідливого" процесу Write-Host "[+] Симуляція: Виконання $MaliciousName..." -ForegroundColor Yellow Start-Process -FilePath $FakeBinary -ArgumentList "/c echo STOCKSTAY_SIMULATION_ACTIVE" -WindowStyle Hidden Write-Host "[+] Симуляція: Триггеровано виконання процесу." -ForegroundColor Green -
Команди очищення:
# Сценарій очищення $TargetDir = "$env:TEMPStockstaySim" if (Test-Path $TargetDir) { Remove-Item -Path $TargetDir -Recurse -Force Write-Host "[+] Очищення: Видалено симуляційну директорію $TargetDir" -ForegroundColor Green } else { Write-Host "[-] Очищення: Симуляційну директорію не знайдено." -ForegroundColor Red }