Кампанія TerminalFix створює зворотні тунелі для стійкого доступу
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Кампанія TerminalFix є варіантом ClickFix, яка використовує фальшиві оверлеї з Cloudflare CAPTCHA для соціальної інженерії користувачів з метою виконання шкідливих PowerShell команд. Ланцюг атаки поєднує завантаження бічних DLL, стеганографічне вилучення корисного навантаження з PNG зображень та розширену розвідку Active Directory. Врешті-решт, кампанія розгортає на замовлення імплантат на базі Python з зворотним тунелем, що надає зловмисникам стійкий проксі-доступ на рівні мережі.
Розслідування
Microsoft Threat Intelligence проаналізувала багатоетапний ланцюг атаки, який зловживає підписаним легітимним LockScreenContentServer.exe бінарним файлом для завантаження бічних DLL. Розслідування показало, як шкідливі корисні навантаження приховані в пікселях PNG і як середовище виконання Python створює зворотний тунель на базі WebSocket. Дослідники також ідентифікували інфраструктуру командування та контролю і техніки розвідки, що використовуються для складання карти внутрішніх мереж.
Минімізація ризиків
Організації мають обмежувати виконання PowerShell через AppLocker або Групову Політику та стежити за LockScreenContentServer.exe виконанням з незвичайних або нестандартних місць. Правила зменшення поверхні атаки (ASR) можуть допомогти блокувати обфусцировані скрипти та несанкціоновані запуски програм. Навчання користувачів для розрізнення фальшивих CAPTCHA є також важливим превентивним заходом.
Відповідь
Якщо виявлено активність TerminalFix, уражені пристрої слід розглядати як потенційні точки повороту в мережі та дослідити на предмет латерального руху. Пріоритет слід надати ротації облікових даних, зокрема для облікових записів адміністратора домену, доступних з компрометованої системи. Команди безпеки також повинні провести судову перевірку на наявність несанкціонованих середовищ виконання Python та підозрілих вихідних зв’язків WebSocket.
Сценарій атаки
Ми все ще оновлюємо цю частину.
Виявлення
Можливі точки стійкості [ASEPs – Software/NTUSER Hive] (через registry_event)
Можливі зразки атак ClickFix в командному рядку (через cmdline)
Виконання Python зі підозрілих каталогів (через cmdline)
Виклик підозрілих класів/методів .NET з командного рядка PowerShell (через process_creation)
Можлива системна інвентаризація (через cmdline)
Можливе виявлення віддаленої системи або перевірка підключення (через cmdline)
Виявлення підозрілих доменних довіреностей (через cmdline)
Виконання Attrib для приховування файлів (через cmdline)
Можливі прямі завантаження інтерпретатора Python (через cmdline)
Архів був вилучений у підозрілий каталог за допомогою PowerShell (через powershell)
IOC (HashSha256) для виявлення: кампанія TerminalFix розгортає зворотний тунель через багатоступінчасте проникнення
Вихідний тунель TLS WebSocket на gitnow.dev [Підключення до мережі Windows]
Виявлення зворотного тунелю TerminalFix та завантаження DLL [Створення процесу Windows]
Завантаження DLL і екстракція стеганографічних корисних навантажень у кампанії TerminalFix [Завантаження зображення Windows]
Виконання кампанії TerminalFix PowerShell і цикл команд [Windows Powershell]
Виконання симуляції
Передумова: телеметрія та базисне попереднє перевірення повинні бути успішно завершені.
Обґрунтування: цей розділ детально описує точне виконання техніки супротивника (TTP), призначеної для провокування виявлення правила. Команди і наратив МАЮТЬ безпосередньо відображати виявлені TTP і націлені на створення саме тієї телеметрії, яку очікує логіка виявлення. Абстрактні або не пов’язані приклади можуть призвести до неправильної діагностики.
-
Опис атаки і команди: Супротивник планує встановити стійкий зворотний тунель. Щоб злитися з системними процесами, спочатку він впускає схожий на легітимний бінарний файл,
LockScreenContentServer.exe, в директорію. Потім вони використовують завантаження бічних DLL для виконання шкідливого коду. Після цього вони ініціюють тунель на базі Python, використовуючиpythonw.exe(щоб уникнути видимого вікна консолі) і виконують скрипт під назвоюclient.py. Ця послідовність створена для створення бекдора на рівні мережі, який обходить стандартні обмеження брандмауера через тунелювання WebSocket. -
Скрипт тестування регресії:
# Скрипт симуляції: емуляція зворотного тунелю TerminalFix # 1. Налаштування середовища $targetDir = "C:UsersPublicDownloadsSystemFiles" New-Item -Path $targetDir -ItemType Directory -Force # 2. Створення підставного 'LockScreenContentServer.exe' (Симуляція завантаженого бінарного файлу) # В реальній атаці це був би реальний файл PE. $dummyExe = Join-Path $targetDir "LockScreenContentServer.exe" New-Item -Path $dummyExe -ItemType File -Force # 3. Створення підставного Python скрипта 'client.py' $pythonScript = Join-Path $targetDir "client.py" "print('Встановлення тунелю...')" | Out-File -FilePath $pythonScript -Encoding ascii # 4. Виконання 'шкідливих' процесів для провокування логіки виявлення # Тригер частина А: LockScreenContentServer.exe Start-Process -FilePath $dummyExe -WindowStyle Hidden # Тригер частина Б: pythonw.exe з client.py в командному рядку # Примітка: ми використовуємо повний шлях до pythonw.exe, як очікується за правилом $pythonwPath = "C:WindowsSystem32pythonw.exe" # Якщо pythonw не в System32, ми шукаємо його if (-not (Test-Path $pythonwPath)) { $pythonwPath = (Get-Command pythonw.exe).Source } Start-Process -FilePath $pythonwPath -ArgumentList $pythonScript -WindowStyle Hidden -
Команди очищення:
# Скрипт очищення $targetDir = "C:UsersPublicDownloadsSystemFiles" if (Test-Path $targetDir) { Remove-Item -Path $targetDir -Recurse -Force }