Фейкові «Secure Mail» приманки доставляють шкідливі файли, маскуючись під кредитні компанії
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
AhnLab виявив фішингову кампанію, що поширює шкідливі файли LNK, замасковані під повідомлення про безпечну пошту від великого корейського постачальника кредитних карток. При відкритті цей ярлик запускає HTA через mshta.exe і PowerShell, завантажуючи підключені наповнювачі, які змінюються в залежності від того, чи увімкнено Windows Defender. Якщо Defender активний, зловмисники використовують curl для отримання зашифрованих файлів, які згодом розпаковуються та виконуються. Якщо Defender вимкнено, ланцюг змінюється на пряме завантаження DLL і додаткову діяльність завантажувача. Результуюче шкідливе ПЗ підтримує крадіжку інформації, запис натискань клавіш, збирання даних з буфера обміну та функціональні можливості бекдору.
Розслідування
Розслідування показало, що початковий файл LNK запускає mshta.exe, що виконує HTA, який містить обфускацію VBScript. Цей HTA завантажує pipe.zip, який містить скрипти кодування Base64 з назвами 1.log, 1.ps1, і 2.log, всі з яких декодуються та виконуються в пам’яті. Коли Defender не активний, шкідливе ПЗ натомість завантажує user.txt and sys.log, розшифровує sys.log у sys.dll, і виконує його через rundll32. Аналіз розшифрованого user.txt виявив три URL-адреси Google Drive, використані для завантаження додаткових шкідливих файлів, у тому числі notepad.log, net, і app, які зберігаються під %LOCALAPPDATA%.
Міри захисту
Рекомендовані заходи захисту включають перевірку легітимності вкладень електронної пошти, попередження автоматичного виконання файлів LNK і моніторинг підозрілого використання mshta.exe and curl. Служби безпеки також повинні шукати та видаляти файли, такі як 1.log, 1.ps1, 2.log, notepad.log, net, і app з %TEMP% and %LOCALAPPDATA%. Крім того, захисники повинні перевірити систему на наявність несподіваних змін у реєстрі та забезпечити включення і належну конфігурацію Windows Defender або іншої платформи захисту кінцевих точок.
Реакція
Якщо виявлено цю активність, негайно ізолюйте уражену систему, припиніть будь-які mshta.exe, curl, або rundll32 процеси, що виконують невідомі файли, і зберігайте шкідливі артефакти для криміналістичного огляду. Виконайте повне сканування системи, скиньте будь-які потенційно розкриті облікові дані та контролюйте подальшу активність бекдору, пов’язану з notepad.log. Вміст виявлення також повинен бути оновлений з використаними індикаторами компрометації, і засоби безпеки електронної пошти повинні бути посилені для блокування подібних фішингістських заманювальних заходів у майбутньому.
graph TB %% Class Definitions classDef action fill:#99ccff classDef operator fill:#ff9900 classDef builtin fill:#cccccc %% Nodes initial_user_exec[“<b>Техніка</b> – <b>T1204.002 Виконання користувачем: шкідливий файл</b><br/>Жертва відкриває .lnk файл, замаскований під безпечний лист від компанії кредитних карток.”] class initial_user_exec action exec_mshta[“<b>Техніка</b> – <b>T1218.005 Проксі-виконання системного бінарника: Mshta</b><br/>LNK запускає PowerShell, який виконує mshta.exe для завантаження віддаленого HTA з обфускованим VBScript.”] class exec_mshta action exec_powershell[“<b>Техніка</b> – <b>T1059.001 Інтерпретатор команд і скриптів: PowerShell</b><br/>PowerShell завантажує додаткові корисні навантаження через curl.”] class exec_powershell action masquerade[“<b>Техніка</b> – <b>T1036.008 Маскування: підміна типу файлу</b><br/>Файл LNK маскується під безпечний лист.”] class masquerade action obfuscate[“<b>Техніка</b> – <b>T1027 Обфусковані файли або інформація</b><br/>Корисні навантаження зашифровані AES та закодовані Base64; використовується іконка LNK для приховування.”] class obfuscate action sandbox_evasion[“<b>Техніка</b> – <b>T1497.002 Уникнення пісочниці: перевірка активності користувача</b><br/>Шкідливе ПЗ перевіряє стан Windows Defender.”] class sandbox_evasion action cond_defender[“<b>Оператор</b> – AND умова на основі стану Defender”] class cond_defender operator defender_on[“<b>Умова</b> – Defender увімкнено”] class defender_on action defender_off[“<b>Умова</b> – Defender вимкнено”] class defender_off action download_pipe[“<b>Дія</b> – Завантажує pipe.zip, розшифровує та витягує 1.log, 1.ps1, 2.log.”] class download_pipe action cred_access[“<b>Техніка</b> – <b>T1539 Викрадення сесії браузера</b>, <b>T1185 Cookies веб-сесій</b>, <b>T1555.003 Облікові дані браузера</b><br/>Скрипти здійснюють крадіжку облікових даних.”] class cred_access action collection[“<b>Техніка</b> – <b>T1056.001 Перехоплення введення: кейлогінг</b> та <b>T1115 Дані буфера обміну</b><br/>Збір натискань клавіш та даних буфера обміну.”] class collection action download_sys[“<b>Дія</b> – Завантажує user.txt і sys.log, розшифровує sys.dll.”] class download_sys action load_rundll[“<b>Техніка</b> – <b>T1218.011 Проксі-виконання підписаного бінарника: Rundll32</b><br/>Завантаження sys.dll через rundll32.”] class load_rundll action persistence_appinit[“<b>Техніка</b> – <b>T1546.010 Виконання через події: AppInit DLL</b><br/>sys.dll використовується для закріплення та приховування активності.”] class persistence_appinit action command_control[“<b>Техніка</b> – <b>T1219 Інструменти віддаленого доступу</b><br/>notepad.log забезпечує віддалене виконання команд та ексфільтрацію даних.”] class command_control action clipboard_phish[“<b>Техніка</b> – <b>T1204.004 Фішинг через копіювання-вставку</b><br/>Фішинг через буфер обміну.”] class clipboard_phish action %% Connections initial_user_exec –>|призводить до| exec_mshta exec_mshta –>|виконує| exec_powershell exec_powershell –>|активує| masquerade masquerade –>|активує| obfuscate obfuscate –>|активує| sandbox_evasion sandbox_evasion –>|тригер| cond_defender cond_defender –>|Defender увімкнено| defender_on cond_defender –>|Defender вимкнено| defender_off defender_on –>|завантажує| download_pipe download_pipe –>|містить| cred_access cred_access –>|активує| collection defender_off –>|завантажує| download_sys download_sys –>|завантажує| load_rundll load_rundll –>|створює| persistence_appinit persistence_appinit –>|активує| command_control command_control –>|використовує| clipboard_phish
Потік атаки
Виявлення
Можливе виконання через короткий скрипт (через cmdline)
Перегляд
Підозріла поведінка ухилення LOLBAS MSHTA за допомогою виявлення пов’язаних команд (через створення процесів)
Перегляд
Можливе проникнення/втеча даних/С2 через сторонні послуги/інструменти (через проксі)
Перегляд
Можливе проникнення/втеча даних/С2 через сторонні послуги/інструменти (через dns)
Перегляд
Виконання Rundll32 з sys.dll у вимкнутих середовищах Windows Defender [Створення процесу Windows]
Перегляд
Шкідливий файл LNK з виконанням команди mshta [Windows Powershell]
Перегляд
Виконання симуляції
Умова: Телеметрія та перевірка базової лінії повинна бути пройдена.
-
Сценарій атаки та команди:
Супротивник отримав доступ до кінцевої точки та бажає виконати довільний код, ухиляючись від традиційного контролю додатків. Вони створюють шкідливий файл HTA, що містить обфускацію VBScript, яка, коли відображається, записує резервний варіант PowerShell на диск. Щоб запустити HTA, вони використовують ярлик Windows (.lnk), який викликаєpowershell.exeз командою, яка викликаєmshta.exe. Виконання ярлика ініціює PowerShell →mshtaланцюг, створюючи точну телеметрію, за якою правило стежить. -
Сценарій регресійного тестування:
# ------------------------------------------------- # 1. Створити шкідливий HTA з обфускацією VBScript # ------------------------------------------------- $htaPath = "$env:TEMPevil.hta" $vbscript = @" <script language='VBScript'> ' Шкідливий вантаж VBScript (приклад: записувати файл) Dim fso, f Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.CreateTextFile("C:WindowsTemppwned.txt", True) f.WriteLine "Compromised by ATT&CK" f.Close </script> "@ Set-Content -Path $htaPath -Value $vbscript -Encoding ASCII # ------------------------------------------------- # 2. Створити ярлик (.lnk), що запускає PowerShell → mshta # ------------------------------------------------- $lnkPath = "$env:TEMPlaunch_malicious.lnk" $ws = New-Object -ComObject WScript.Shell $shortcut = $ws.CreateShortcut($lnkPath) # Команда PowerShell, що запускає mshta з файлом HTA $psCommand = "mshta.exe `"$htaPath`"" $shortcut.TargetPath = "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe" $shortcut.Arguments = "-NoProfile -WindowStyle Hidden -Command `"$psCommand`"" $shortcut.Save() # ------------------------------------------------- # 3. Виконати ярлик для ініціювання виявлення # ------------------------------------------------- Write-Host "Виконання шкідливого ярлика..." & $lnkPath # ------------------------------------------------- # 4. Пауза для збору журналів # ------------------------------------------------- Start-Sleep -Seconds 10 -
Команди очистки:
# Видалити створені артефакти Remove-Item -Path "$env:TEMPevil.hta" -Force -ErrorAction SilentlyContinue Remove-Item -Path "$env:TEMPlaunch_malicious.lnk" -Force -ErrorAction SilentlyContinue Remove-Item -Path "C:WindowsTemppwned.txt" -Force -ErrorAction SilentlyContinue Write-Host "Прибирання завершено."