Операція “Прихований Доступ”: Оперативний фішинг на базі файлів LNK, спрямований на судовий сектор Аргентини для розгортання прихованого RAT
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Seqrite виявила кампанію spear-phishing, яка розповсюджує озброєний ярлик LNK, пов’язаний зі шкідливим завантажувачем BAT. Завантажувач завантажує троян віддаленого доступу на основі Rust з репозиторію GitHub, який виконує широкі перевірки проти аналізу і встановлює стійкий C2-канал зв’язку. Кампанія націлена на судові інститути Аргентини та пов’язані з ними урядові органи. Ланцюг зараження використовує PDF-декої, що виглядають легітимно, для збільшення взаємодії з користувачем.
Розслідування
Розслідування проаналізувало ZIP-навантаження, що містить файли LNK, BAT і PDF, зворотню розробку команди PowerShell, яка використовується для виклику завантажувача BAT, і розібрало поведінку RAT, включаючи перевірки проти ВМ, збирання інформації про систему, механізми стійкості та зашифровані команди C2. Команда зіставила спостережувані поведінки з техніками ATT&CK і виявила використання маскування, обходу політики виконання та методів fallback C2.
Пом’якшення
Впровадьте суворий контроль за ярликами та примусьте обмеження політики виконання для PowerShell. Блокуйте вихідні з’єднання на неавторизовані репозиторії GitHub і контролюйте створення ключів реєстру Run або запланованих завдань з підозрілими іменами. Впровадьте підписи для обходу виявлення ВМ та забезпечте виконання з найменшими привілеями для користувачів, які обробляють PDF-документи.
Відповідь
Сповіщайте про створення шкідливого ярлика LNK або виконання пов’язаної команди PowerShell. Шукайте наявність msedge_proxy.exe і його пов’язані записи стійкості в реєстрі. Ізолюйте уражені хости, зупиніть шкідливі процеси і виправте будь-які створені заплановані завдання або ключі реєстру. Проведіть повний форензичний огляд на можливе ексфільтрацію даних.
Атаковий потік
Виявлення
Microsoft Edge Виконуваний двійковий файл запущено поза Program Files (через cmdline)
Перегляд
Підозрілі перевірки проти ВМ через артефакти віртуалізації (через cmdline)
Перегляд
Windows Двійковий файл було завантажено з Github (через проксі)
Перегляд
Можливе перерахування системи (через cmdline)
Перегляд
IOC (SourceIP) для виявлення: Операція Прихований Доступ: Озброєний LNK-Based Spear-Phishing, що націлений на судовий сектор Аргентини для розгортання прихованого RAT
Перегляд
IOC (DestinationIP) для виявлення: Операція Прихований Доступ: Озброєний LNK-Based Spear-Phishing, що націлений на судовий сектор Аргентини для розгортання прихованого RAT
Перегляд
IOC (HashMd5) для виявлення: Операція Прихований Доступ: Озброєний LNK-Based Spear-Phishing, що націлений на судовий сектор Аргентини для розгортання прихованого RAT
Перегляд
Озброєний LNK-Based Spear-Phishing з виконанням PowerShell [Windows Powershell]
Перегляд
Виявлення виконання msedge_proxy.exe [Створення процесу Windows]
Перегляд
Виконавче резюме
- ID тестового випадку: TC-20260120-A9Z3K
- TTPs: T1059.001 (PowerShell), T1059.003 (Windows Command Shell), T1027 (Сховані/Збережені файли)
- Зведення логіки правила виявлення: Виявляє створення процесу PowerShell, де командний рядок містить “-ep bypass -w hidden -f health-check.bat”, що вказує на приховане виконання bat-файлу через PowerShell.
- Мова/Формат правила виявлення: Sigma (YAML)
- Цільове середовище безпеки: Windows 10/Server 2019, увімкнено журналювання створення процесів (Ідентифікатор події 4688), загальний SIEM/EDR (наприклад, Elastic, Splunk)
- Оцінка стійкості (1-5): 2
- Обґрунтування: Правило дуже специфічне до точного імені bat файлу і точної послідовності прапорців; зловмисник може легко обійти його, перейменувавши навантаження, змінивши послідовність прапорців або використовуючи альтернативні методи виконання, зберігаючи той же шкідливий намір.
- Ключові знахідки: Правило спрацьовує надійно, коли використовується точний командний рядок, але його можна обійти з мінімальними змінами (наприклад, інше ім’я скрипта, використання
-EncodedCommand). - Рекомендація: Узагальнити виявлення для пошуку виконання PowerShell з
-ExecutionPolicy Bypassand-WindowStyle Hiddenнезалежно від імені скрипта, і доповнити поведінковими індикаторами (наприклад, вихідні мережеві з’єднання відразу після виконання).
Середовище симуляції та контекст
-
TTPs під тестом:
- T1059.001: PowerShell – використання PowerShell для виконання шкідливих скриптів.
- T1059.003: Windows Command Shell – виконання bat-файлу з PowerShell.
- T1027: Сховані/Збережені файли – доставка шкідливого bat-навантаження, за шановною назвою.
-
Контекст і релевантність TTP:
- T1059.001 безпосередньо згадується у фокусі виявлення на
powershell.exe. - T1059.003 застосовується, коли PowerShell команда запускає
health-check.bat. - T1027 є актуальною, тому що bat-файл часто обфускований або маскується (наприклад, перейменовується в таку, що здається легітимною, програму перевірки здоров’я) для уникнення примітивних фільтрів типу файлу.
- T1059.001 безпосередньо згадується у фокусі виявлення на
-
Цільове середовище:
- OS: Windows 10 / Windows Server 2019
- Логування: Журнал подій безпеки Windows – створення процесу (Ідентифікатор події 4688) з повним
CommandLineзахоплення увімкнено. - Стек безпеки: Загальний SIEM/EDR (наприклад, Elastic Stack, Splunk, Microsoft Sentinel).
Телеметрія і базове передпольотне тестування
Обґрунтування: перед симуляцією атаки ми повинні переконатися, що цільовий хост налаштований на створення необхідних журналів, що ці журнали надходять до SIEM, і що правило виявлення не спрацьовує на нешкідливу активність. Без цієї валідації будь-який результат тесту є ненадійним.
-
1. Інструкції з конфігурації телеметрії:
- Відкрити Редактор локальної групової політики (
gpedit.msc). - Перехід до Конфігурація комп’ютера → Адміністративні шаблони → Система → Перевірка права на створення процесу.
- Увімкнути “Включити командний рядок у події створення процесу”.
- Застосувати політику і виконати
gpupdate /force. - Переконайтеся, що Ідентифікатор події 4688 зафіксовано в каналі Безпека (каналом)
wevtutil qe Security /q:"*[System[EventID=4688]]" /f:text).
- Відкрити Редактор локальної групової політики (
-
2. Валідація інгестації та бази:
-
Дія (нешкідлива телеметрія): Виконати команду PowerShell, яка імітує структуру, але використовує інше ім’я bat, і яка повинна not спричинити спрацьовування виявлення.
# Нешкідлива базова команда – не повинна співпадати з правилом powershell.exe -ep bypass -w hidden -f benign.bat -
Запит на валідацію (Інгестація): Використовуйте запит SIEM, щоб підтвердити, що нешкідлива команда була зафіксована і не not відповідає правилу. Приклад у Kusto Query Language (KQL):
// Перевірити інгестацію нешкідливого виконання PowerShell SecurityEvent | where EventID == 4688 | where Process == "powershell.exe" | where CommandLine contains "-ep bypass -w hidden -f benign.bat"
-
Виконання симуляції
Передумова: Телеметрія і базове передпольотне тестування повинні були пройти.
Обґрунтування: Цей розділ деталізує точне виконання техніки супротивника (TTP), що призначена для виклику правил виявлення. Команди та розповідь МУЮТЬ безпосередньо відображати ідентифіковані TTP та прагнуть генерувати точну телеметрию, очікувану логікою виявлення. Абстрактні або нерелевантні приклади призводять до неправильного діагнозу.
-
Нападовий наратив та команди:
-
Початковий компроміс: Зловмисник надсилає spear-phishing електронний лист з озброєним
.lnkярликом, що націлений на юридичного працівника. Ярлик вказує на команду PowerShell, що запускається з-ExecutionPolicy Bypassі прихованим вікном, щоб уникнути підозри. -
Потік виконання: Коли користувач клацає на ярлик, Windows запускає наступну команду, яка запускає
health-check.bat. Bat-файл містить реальне шкідливе навантаження (наприклад, PowerShell завантажувач, що завантажує RAT).powershell.exe -ep bypass -w hidden -f health-check.bat -
Доставка навантаження:
health-check.batвиконує тихий HTTP GET на шкідливий C2, записує навантаження в%TEMP%і виконує його.
-
-
Скрипт регресійного тесту: Скрипт нижче відтворює точну телеметрію шляхом створення
health-check.batз нешкідливим вмістом (щоб зберегти тест у безпеці) і потім викликає команду PowerShell.# ------------------------------------------------- # Скрипт симуляції – виконання озброєного LNK PowerShell # ------------------------------------------------- # 1. Створіть фіктивний health-check.bat (нешкідливий для тестування) $batPath = "$env:TEMPhealth-check.bat" Set-Content -Path $batPath -Value '@echo off & echo Симульоване навантаження виконано' -Encoding ASCII # 2. Виконайте PowerShell з точними прапорцями та іменем скрипта $psCommand = "powershell.exe -ep bypass -w hidden -f `"$batPath`"" Write-Host "Виконується: $psCommand" Start-Process -FilePath "powershell.exe" -ArgumentList "-ep", "bypass", "-w", "hidden", "-f", $batPath -NoNewWindow # 3. Зачекайте кілька секунд, щоб гарантувати генерацію журналів Start-Sleep -Seconds 5 # ------------------------------------------------- -
Команди очищення: Видаліть тестовий bat-файл і будь-які залишкові процеси.
# Очистіть тренувальний health-check.bat Remove-Item -Path "$env:TEMPhealth-check.bat" -ErrorAction SilentlyContinue # Переконайтеся, що ніякі зайві екземпляри PowerShell з тесту не залишилися Get-Process -Name "powershell" -ErrorAction SilentlyContinue | Stop-Process -Force