GlassWorm освоює Mac: Нова інфраструктура, нові хитрощі
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Загроза, що стоїть за GlassWorm, змінила фокус з активності, орієнтованої на Windows, на macOS, поширюючи зловмисні розширення VS Code, які отримують зашифровані JavaScript-платформи за допомогою вказівників C2, похідних від блокчейна Solana. Ця хвиля розширює можливості, додаючи троянізацію апаратних гаманців, продовжуючи розповсюджене викрадення облікових даних через браузери, інструменти розробників і Keychain macOS. Інфраструктура включає адресу гаманця Solana та IP-адресу, повторно використану з попередніх операцій GlassWorm, що свідчить про безперервність інструментів і хостингу оператора. Дослідники зауважили понад 50 000 завантажень до того, як розширення були видалені, вказуючи на значний вплив на середовища розробників.
Розслідування
Koi Security ідентифікувала три зловмисних розширення VS Code на ринку Open VSX і пов’язала їхній робочий процес командування та контролю з гаманцем Solana та спільною IP-адресою, раніше пов’язаною з GlassWorm. Вставки мають 15-хвилинну затримку виконання, потім розшифровують і запускають JavaScript-платформу AES-256-CBC. На macOS стійкість встановлюється через LaunchAgents. Цілі збору включають гаманці браузера та дані гаманця на робочому столі, токени доступу розробника, ключі SSH та матеріали Keychain macOS. Зловмисні дані зберігаються у /tmp/ijewf/ перед ексфільтрацією на серверний шлях подібний до /p2p. Вона також прагне замінити законні додатки супроводу апаратних гаманців на ще троянізовані, такі як Ledger Live та Trezor Suite, щоб захопити цінні секрети та транзакції.
Пом’якшення
Посилення контролю за інструментами розробників шляхом забезпечення дозволу на розширення та вимоги перевірки безпеки для розширень VS Code, особливо тих, що походять від відкритих ринків. Розгортання виявлення оброблених зразків та підозрілих створень або модифікацій LaunchAgents. Моніторинг та блокування підозрілої вихідної активності, пов’язаної з вказівниками Solana дериватами C2, а також додавання мережевих виявлень для незвичних з’єднань з ідентифікованим повторно використаним IP. Вимога MFA для облікових записів розробників і хмарних акаунтів, а також впровадження перевірок цілісності апаратного гаманця (перевірка видавця, нотарізація/перевірка підпису та контрольовані канали оновлення програмного забезпечення).
Реакція
Спрацьовуйте тривоги на нові або змінені LaunchAgents, аномальний доступ до сховищ Keychain, та спроби отримання Solana-посилань C2. Карантин і видалення зловмисних розширень VS Code, а потім знищення будь-якої зв’язаної LaunchAgent стійкості. Проведення цільових судово-експертних досліджень на /tmp/ijewf/ для визначення стадіювання облікових даних та підтвердження зібраних даних. Перевірити цілісність додатків апаратного гаманця (Ledger Live, Trezor Suite) та перевстановити з надійних джерел, якщо підозрюється підроблення. Скидання вражених облікових даних, ротація ключів SSH і токенів розробника, анулювання сесій, розширення полювання на кінцевих точках для однакових ID розширень, шляхів файлів та артефактів стійкості.
Потік атаки
Виявлення
Можлива спроба виявлення паролів браузера MacOS (через командний рядок)
Переглянути
Атоми IOC (SourceIP) для виявлення: GlassWorm переходить на Mac: Нова інфраструктура, нові трюки
Переглянути
Атоми IOC (DestinationIP) для виявлення: GlassWorm переходить на Mac: Нова інфраструктура, нові трюки
Переглянути
Атоми IOC (Електронні адреси) для виявлення: GlassWorm переходить на Mac: Нова інфраструктура, нові трюки
Переглянути
Виявлення доступу до Keychain macOS від GlassWorm [створення процесу Linux]
Переглянути
Можливе виконання AppleScript для доступу до Keychain на macOS [створення процесу Linux]
Переглянути
Виявлення комунікації C2 з блокчейном Solana за допомогою GlassWorm [проксі]
Переглянути
Виконання симуляції
Передумова: перевірка відео та базових налаштувань телеметрії повинна бути успішною.
Обґрунтування: Цей розділ деталізує точне виконання техніки супротивника (TTP), призначеної для спрацьовування правила виявлення. Команди та наратив повинні безпосередньо відображати визначені TTP та прагнути генерувати точну телеметрію, очікувану логікою виявлення. Абстрактні або не пов’язані приклади призведуть до неналежної діагностики.
-
Нападний нарис та команди:
Атака, що вже скомпрометувала обліковий запис користувача macOS з низькими привілеями, бажає здобути пароль облікового запису служби, збережений у Keychain під міткоюpass_users_for_script. Щоб уникнути розгортання окремого виконуваного файлу, нападник пише однорядковий AppleScript, який викликає вбудованийінструмент безпекичерезdo shell script. Скрипт виконується безпосередньо в сесії користувача, створюючи подію створення процесу з точною командною лінією, на яку реагує правило Sigma.# Створити тестовий елемент keychain (тільки для демонстрації; справжній нападник буде цілити на існуючий елемент) security add-generic-password -a attacker -s pass_users_for_script -w SuperSecret123 # Виконати AppleScript, що читає пароль osascript -e 'do shell script "security find-generic-password -s '''pass_users_for_script''' -w"' -
Скрипт тестування регресії:
#!/usr/bin/env bash set -euo pipefail # Крок 1: Переконайтеся, що цільовий запис keychain існує (ідемпотентний) if ! security find-generic-password -s pass_users_for_script -w >/dev/null 2>&1; then security add-generic-password -a attacker -s pass_users_for_script -w SuperSecret123 fi # Крок 2: Виконати AppleScript, що спрацьовує правило виявлення echo "[+] Виконання AppleScript для зчитування запису keychain..." osascript -e 'do shell script "security find-generic-password -s '''pass_users_for_script''' -w"' -
Команди очищення:
# Видалити тестовий елемент keychain, щоб залишити систему чистою security delete-generic-password -s pass_users_for_script echo "[+] Очищення завершено: запис тестового елемента keychain видалено."