Шкідлива кампанія APT-Q-27 націлена на підтримку клієнтів Web3
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Фінансово мотивований зловмисник, відстежуваний як APT-Q-27 (також відомий як GoldenEyeDog), проводить багатокрокову кампанію з використанням зловмисного програмного забезпечення, що починається з чатів підтримки клієнтів Web3. Початковий приманка – це .pif файл, замаскований під скріншот, який розгортає спеціальний завантажувач на .NET. Цей завантажувач завантажує додаткові етапи з AWS S3, створює приховану директорію для проміжного зберігання і використовує DLL sideloading шляхом поєднання шкідливого DLL з легітимним виконуваним файлом YY платформи. Кінцевий етап встановлює бекдор, який спілкується через нестандартний TCP порт, забезпечуючи прихований дистанційний доступ, який виходить за рамки типової веб-трафіку.
Розслідування
ZeroShadow проаналізував кілька варіантів завантажувача, включаючи Feedback.exe та photo2025060268jpg.exe, і відновив подвійну кодування Base64 URL-адресу C2, вбудовану в ланцюг. Реверсінжінірування виявило логіку дешифрування завантажувача і робочий процес sideloading, використовуваний для запуску виконання. Аналітики також задокументували постійний маркер шляху, що містить “@27”, крім механізму сталості через HKCU значення Run, названого SystemUpdats. Спостерігалося, що бекдор використовує жорстко запрограмований набір з 37 IP-адрес C2 і спілкується через TCP 15628, маскуючи активність, посилаючись на URL-адреси оновлення Microsoft як індикатори мережі-відволікання.
Пом’якшення
Увімкніть повну видимість розширення файлів і блокуйте виконання .pif файлів на всіх кінцевих точках. Моніторте створення прихованих директорій у місцях кешу в стилі Windows Update і попереджайте про значення SystemUpdats в ключі Run. Зміцніть UAC, запобігаючи атакуючим одночасно обнулити три відповідні ключі політики, і обмежте вихідну з’єднаність TCP 15628 на вихідних точках. Впроваджуйте перевірку підпису коду й ретельно аналізуйте підписані виконувані файли, запущені з не системних директорій, щоб зменшити ризик DLL sideloading.
Відповідь
Якщо виявлення спрацьовують, ізолюйте кінцеву точку і збережіть як пам’ять, так і артефакти диска для тріажу. Полюйте за директорією проміжного зберігання, що містить “@27”, записом ключа Run SystemUpdats та будь-якими підозрілими DLL, що поєднані з легітимним виконуваним файлом YY. Блокуйте виявлені IP-адреси/домені C2 та розгорніть політики контролю додатків, які забороняють виконання непідписаних чи ненадійних виконуваних файлів з шляхів профілю користувача. Розширте масштабування на весь флот, щоб виявити ті ж патерни сталості та мережі, щоб ідентифікувати додаткові уражені хости.
"graph TB %% Class definitions classDef action fill:#99ccff classDef file fill:#ffcc99 classDef registry fill:#c2f0c2 classDef network fill:#ff99cc classDef builtin fill:#cccccc %% Nodes action_phishing_link["<b>Дія</b> – <b>T1204.001 Виконання користувача: Шкідливе посилання</b><br/>Оманливий URL відправлено в liveu2011chat, жертва натискає та завантажує .pif файл з назвою photo2025060268jpg.exe"] class action_phishing_link action file_pif["<b>Файл</b> – <b>Назва</b>: photo2025060268jpg.exe<br/><b>Тип</b>: .pif виконуваний файл замаскований під зображення"] class file_pif file action_malicious_file["<b>Дія</b> – <b>T1204.002 Виконання користувача: Зловмисний файл</b><br/>.pif виконується, відкриває Paint з підробленим зображенням помилки і запускає завантажувач"] class action_malicious_file action file_loader["<b>Зловмисне ПО</b> – <b>Назва</b>: Завантажувач<br/><b>Поведінка</b>: Дешифрує навантаження, запускає updat.exe"] class file_loader builtin action_obfuscation["<b>Дія</b> – <b>T1027.008 Обфусковані файли або інформація</b><br/>Всі рядки, URL-адреси та навантаження подвійно закодовані в Base64"] class action_obfuscation action action_debugger_evasion["<b>Дія</b> – <b>T1622 Ухилення від відладаг<br/>Перевіряється IsDebuggerPresent і стек викликів, виходить, якщо виявлено відладку"] class action_debugger_evasion action action_persistence["<b>Дія</b> – <b>T1547.001 Записи реєстру/папка запуску</b><br/>Запис до HKCUSoftwareMicrosoftWindowsCurrentVersionRunSystemUpdats → updat.exe в прихованій директорії для проміжного зберігання"] class action_persistence action registry_run_key["<b>Реєстр</b> – <b>Шлях</b>: HKCUSoftwareMicrosoftWindowsCurrentVersionRunSystemUpdats<br/><b>Значення</b>: шлях до updat.exe"] class registry_run_key registry file_updat["<b>Файл</b> – <b>Назва</b>: updat.exe<br/><b>Розташування</b>: прихована директорія для проміжного зберігання"] class file_updat file action_uac_bypass["<b>Дія</b> – <b>T1548.002 Обхід UAC</b><br/>Встановлює EnableLUA, ConsentPromptBehaviorAdmin і PromptOnSecureDesktop у 0 в одному потоці"] class action_uac_bypass action action_appinit["<b>Дія</b> – <b>T1546.010 AppInit DLLs</b> & <b>T1546.009 AppCert DLLs</b><br/>updat.exe запущений зі встановленою робочою директорією на список зловмисних DLL"] class action_appinit action file_vcruntime["<b>DLL</b> – <b>Назва</b>: vcruntime140.dll (зловмисний)"] class file_vcruntime file file_msvcp["<b>DLL</b> – <b>Назва</b>: msvcp140.dll (зловмисний)"] class file_msvcp file file_crashreport["<b>DLL</b> – <b>Назва</b>: crashreport.dll (зловмисний)"] class file_crashreport file action_dll_sideload["<b>Дія</b> – <b>T1574.002 DLL Sideu2011Loading</b><br/>Зловмисні DLL завантажуються замість легітимних бібліотек виконання"] class action_dll_sideload action action_c2["<b>Дія</b> – <b>T1571 Нестандартний порт</b> & <b>T1573 Зашифрований канал</b><br/>Бекдор встановлює TCP з’єднання з C2 на порт 15628, трафік шифрується, отримує прояв з AWS S3"] class action_c2 action network_c2["<b>Мережа</b> – <b>Протокол</b>: TCP<br/><b>Порт</b>: 15628<br/><b>Кінцева точка</b>: сервер C2 (AWS S3)"] class network_c2 network %% Connections action_phishing_link –>|завантажує| file_pif file_pif –>|виконує| action_malicious_file action_malicious_file –>|запускає| file_loader file_loader –>|використовує| action_obfuscation file_loader –>|використовує| action_debugger_evasion file_loader –>|ініціює| action_persistence action_persistence –>|записує| registry_run_key registry_run_key –>|вказує| file_updat file_updat –>|спрацювано| action_uac_bypass action_uac_bypass –>|включає| action_appinit action_appinit –>|завантажує| file_vcruntime action_appinit –>|завантажує| file_msvcp action_appinit –>|завантажує| file_crashreport file_vcruntime –>|сприяє| action_dll_sideload file_msvcp –>|сприяє| action_dll_sideload file_crashreport –>|сприяє| action_dll_sideload action_dll_sideload –>|включає| action_c2 action_c2 –>|спілкується з| network_c2 "
Потік атаки
Детекції
Можливий обхід UAC – Відключення згоди адміністратора (через registry_event)
Перегляд
Можливий подвійний розширення шкідливого файлу (через process_creation)
Перегляд
Можливі точки сталості [ASEPs – Software/NTUSER Hive] (через registry_event)
Перегляд
Можливий обхід UAC – Спроба відключення UAC (через registry_event)
Перегляд
Бібліотека Vcruntime140 завантажена з підозрілого каталогу (через image_load)
Перегляд
Можливий обхід UAC – Спроба відключення безпечного екрану робочого столу (через registry_event)
Перегляд
IOC (DestinationIP) для виявлення: Робота з чергою: APT-Q-27 Аретує клієнтську підтримку Web3 Частина 1
Перегляд
IOC (SourceIP) для виявлення: Робота з чергою: APT-Q-27 Аретує клієнтську підтримку Web3 Частина 2
Перегляд
IOC (DestinationIP) для виявлення: Робота з чергою: APT-Q-27 Аретує клієнтську підтримку Web3 Частина 2
Перегляд
IOC (HashSha256) для виявлення: Робота з чергою: APT-Q-27 Аретує клієнтську підтримку Web3
Перегляд
IOC (SourceIP) для виявлення: Робота з чергою: APT-Q-27 Аретує клієнтську підтримку Web3 Частина 1
Перегляд
Виявлення відключення UAC через зміни реєстру [Подія реєстру Windows]
Перегляд
Виявлення DLL sideloading через Updat.exe в AppData [Створення процесу Windows]
Перегляд
Виконання моделювання
Передумова: Перевірка телеметрії та базовий контроль перед польотом повинні бути пройдені.
Пояснення: У цьому розділі детально описано точне виконання техніки противника (TTP), яке покликане спровокувати спрацювання правила виявлення. Команди та розповіді ПОВИННІ безпосередньо відображати з’ясовані TTP та прагнути створити точно ту телеметрію, яка очікується логікою виявлення.
-
Сценарій атаки та команди:
Зловмисник з правами локального адміністратора прагне відключити UAC, щоб спростити шлях для подальших інструментів ескалації привілеїв. Використовуючи утилітуreg.exe(бінарний файл для роботи в ОС), атакуючий встановлює три критичні значення політики UAC0у швидкому підрядку (менше 30 секунд), щоб уникнути виявлення процесами ручного аудиту.# Крок 1 – Відключення UAC “EnableLUA” reg add "HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem" /v EnableLUA /t REG_DWORD /d 0 /f # Крок 2 – Відключення запиту згоди для адміністраторів reg add "HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem" /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 0 /f # Крок 3 – Відключення безпечного робочого столу для підказок UAC reg add "HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem" /v PromptOnSecureDesktop /t REG_DWORD /d 0 /fЦі три команди створюють три Події реєстру (підписка на ідентифікацію об’єктів EventID 4657 у каналі безпеки та відповідні
Скрипт тесту регресії:події) з вмістомСкрипт тесту регресії:шляхів таСкрипт тесту регресії:значеннями, які співпадають з правилом Sigma.Скрипт тесту регресії:Наступний PowerShell-скрипт виконує три записів з паузою у 5 секунд між кожним, щоб комфортно вписатися в 30-секундне вікно, а також забезпечити детермінований потік виконання. -
# Тест регресії – Відключення UAC через реєстр $regPath = “HKLM:SOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem” # Збережіть початкові значення для подальшого очищення $originalEnableLUA = (Get-ItemProperty -Path $regPath -Name EnableLUA -ErrorAction SilentlyContinue).EnableLUA $originalConsent = (Get-ItemProperty -Path $regPath -Name ConsentPromptBehaviorAdmin -ErrorAction SilentlyContinue).ConsentPromptBehaviorAdmin $originalPrompt = (Get-ItemProperty -Path $regPath -Name PromptOnSecureDesktop -ErrorAction SilentlyContinue).PromptOnSecureDesktop # Відключення UAC Set-ItemProperty -Path $regPath -Name EnableLUA -Value 0 Start-Sleep -Seconds 5 Set-ItemProperty -Path $regPath -Name ConsentPromptBehaviorAdmin -Value 0 Start-Sleep -Seconds 5 Set-ItemProperty -Path $regPath -Name PromptOnSecureDesktop -Value 0 Write-Host “UAC відключено – логи перевірки тепер повинні бути зібрані.” Команди очищення:
Відновіть початкові налаштування UAC, щоб повернути систему у стан до тесту. -
# Очищення – Відновлення початкових налаштувань UAC $regPath = “HKLM:SOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem” if ($null -ne $originalEnableLUA) { Set-ItemProperty -Path $regPath -Name EnableLUA -Value $originalEnableLUA } if ($null -ne $originalConsent) { Set-ItemProperty -Path $regPath -Name ConsentPromptBehaviorAdmin -Value $originalConsent } if ($null -ne $originalPrompt) { Set-ItemProperty -Path $regPath -Name PromptOnSecureDesktop -Value $originalPrompt } Write-Host “Налаштування UAC відновлені до початкових значень.” Потік атаки
"graph TB %% Class definitions classDef action fill:#99ccff classDef file fill:#ffcc99 classDef registry fill:#c2f0c2 classDef network fill:#ff99cc classDef builtin fill:#cccccc %% Nodes action_phishing_link["<b>Дія</b> - <b>T1204.001 Виконання користувача: Шкідливе посилання</b><br/>Оманливий URL відправлено в liveu2011chat, жертва натискає та завантажує .pif файл з назвою photo2025060268jpg.exe"] class action_phishing_link action file_pif["<b>Файл</b> - <b>Назва</b>: photo2025060268jpg.exe<br/><b>Тип</b>: .pif виконуваний файл замаскований під зображення"] class file_pif file action_malicious_file["<b>Дія</b> - <b>T1204.002 Виконання користувача: Зловмисний файл</b><br/>.pif виконується, відкриває Paint з підробленим зображенням помилки і запускає завантажувач"] class action_malicious_file action file_loader["<b>Зловмисне ПО</b> - <b>Назва</b>: Завантажувач<br/><b>Поведінка</b>: Дешифрує навантаження, запускає updat.exe"] class file_loader builtin action_obfuscation["<b>Дія</b> - <b>T1027.008 Обфусковані файли або інформація</b><br/>Всі рядки, URL-адреси та навантаження подвійно закодовані в Base64"] class action_obfuscation action action_debugger_evasion["<b>Дія</b> - <b>T1622 Ухилення від відладаг<br/>Перевіряється IsDebuggerPresent і стек викликів, виходить, якщо виявлено відладку"] class action_debugger_evasion action action_persistence["<b>Дія</b> - <b>T1547.001 Записи реєстру/папка запуску</b><br/>Запис до HKCUSoftwareMicrosoftWindowsCurrentVersionRunSystemUpdats → updat.exe в прихованій директорії для проміжного зберігання"] class action_persistence action registry_run_key["<b>Реєстр</b> - <b>Шлях</b>: HKCUSoftwareMicrosoftWindowsCurrentVersionRunSystemUpdats<br/><b>Значення</b>: шлях до updat.exe"] class registry_run_key registry file_updat["<b>Файл</b> - <b>Назва</b>: updat.exe<br/><b>Розташування</b>: прихована директорія для проміжного зберігання"] class file_updat file action_uac_bypass["<b>Дія</b> - <b>T1548.002 Обхід UAC</b><br/>Встановлює EnableLUA, ConsentPromptBehaviorAdmin і PromptOnSecureDesktop у 0 в одному потоці"] class action_uac_bypass action action_appinit["<b>Дія</b> - <b>T1546.010 AppInit DLLs</b> & <b>T1546.009 AppCert DLLs</b><br/>updat.exe запущений зі встановленою робочою директорією на список зловмисних DLL"] class action_appinit action file_vcruntime["<b>DLL</b> - <b>Назва</b>: vcruntime140.dll (зловмисний)"] class file_vcruntime file file_msvcp["<b>DLL</b> - <b>Назва</b>: msvcp140.dll (зловмисний)"] class file_msvcp file file_crashreport["<b>DLL</b> - <b>Назва</b>: crashreport.dll (зловмисний)"] class file_crashreport file action_dll_sideload["<b>Дія</b> - <b>T1574.002 DLL Sideu2011Loading</b><br/>Зловмисні DLL завантажуються замість легітимних бібліотек виконання"] class action_dll_sideload action action_c2["<b>Дія</b> - <b>T1571 Нестандартний порт</b> & <b>T1573 Зашифрований канал</b><br/>Бекдор встановлює TCP з'єднання з C2 на порт 15628, трафік шифрується, отримує прояв з AWS S3"] class action_c2 action network_c2["<b>Мережа</b> - <b>Протокол</b>: TCP<br/><b>Порт</b>: 15628<br/><b>Кінцева точка</b>: сервер C2 (AWS S3)"] class network_c2 network %% Connections action_phishing_link -->|завантажує| file_pif file_pif -->|виконує| action_malicious_file action_malicious_file -->|запускає| file_loader file_loader -->|використовує| action_obfuscation file_loader -->|використовує| action_debugger_evasion file_loader -->|ініціює| action_persistence action_persistence -->|записує| registry_run_key registry_run_key -->|вказує| file_updat file_updat -->|спрацювано| action_uac_bypass action_uac_bypass -->|включає| action_appinit action_appinit -->|завантажує| file_vcruntime action_appinit -->|завантажує| file_msvcp action_appinit -->|завантажує| file_crashreport file_vcruntime -->|сприяє| action_dll_sideload file_msvcp -->|сприяє| action_dll_sideload file_crashreport -->|сприяє| action_dll_sideload action_dll_sideload -->|включає| action_c2 action_c2 -->|спілкується з| network_c2 "