Шкідливе програмне забезпечення ValleyRAT націлюється на тих, хто шукає роботу, зловживає DLL-sideloading у Foxit
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Троян віддаленого доступу ValleyRAT постачається через вкладення електронної пошти, націлені на шукачів роботи та персонал відділу кадрів. Зловмисники використовують підроблений виконуваний файл Foxit PDF Reader і покладаються на бокове завантаження DLL для активації шкідливого msimg32.dll. Вантажний код розпаковує приховане середовище Python, отримує закодований у Base64 скрипт із C2-сервера та налаштовує стійкість через значення реєстру автозапуску, одночасно викрадаючи дані браузера.
Розслідування
Дослідники проаналізували шкідливий архів і виявили перейменований FoxitPDFReader.exe, який завантажує підроблений msimg32.dll за стандартним порядком пошуку DLL у Windows. Пакетний скрипт потім розпаковує вбудований інтерпретатор Python (перейменований у zvchost.exe) і виконує закодований у Base64 загрузний скрипт, отриманий із шкідливої IP-адреси. Мережевий аналіз виявив самопідписаний сертифікат із випадковим CN та унікальним відбитком JA3, що використовується для трафіку C2. Постійність підтримується шляхом створення ключа реєстру автозапуску.
Пом’якшення
Рекомендовані заходи захисту включають ретельне сканування вкладень електронної пошти та блокування виконуваних файлів, що маскуються під PDF-файли. Застосовуйте біллінг додатків для запобігання несанкціонованого бокового завантаження DLL та виконання ненадійних бінарних файлів. Моніторити створення записів реєстру автозапуску та блокувати відомі IP-адреси C2. Підтримуйте актуальні підписи захисту кінцевих точок і надавайте цільове навчання з безпеки, зосереджене на фішингу для шукачів роботи.
Відповідь
Генеруйте оповіщення, коли FoxitPDFReader.exe або msimg32.dll виконуються з незвичних місць, особливо шляхів із глибокими підкресленнями. Корелюйте активність процесу zvchost.exe за допомогою параметра -c та команд закодованих у Base64. Виявляйте вихідні з’єднання на 196.251.86.145 (та пов’язану інфраструктуру) і переглядайте TLS-сеанси з характерним самопідписаним сертифікатом. Перевірте зміни в реєстрі під HKCUSoftwareMicrosoftWindowsCurrentVersionRun на предмет несанкціонованих записів автозапуску.
mermaid graph TB %% Class Definitions Section classDef action fill:#99ccff classDef tool fill:#cccccc classDef malware fill:#ff9999 %% Node Definitions action_phishing[“<b>Дія</b> – <b>T1566.001 Фішинг: Спирфішинг із вкладенням</b><br />Жертва отримує шкідливий zip-архів, що містить замаскований FoxitPDFReader.exe.”] class action_phishing action file_archive[“<b>Інструмент</b> – Шкідливий архів<br />Компресований файл Overview_of_Work_Expectations.zip доставляє вантаж.”] class file_archive tool exe_foxit[“<b>Інструмент</b> – FoxitPDFReader.exe (перейменований)<br />Виконується після відкриття користувачем архіву.”] class exe_foxit tool dll_msimg32[“<b>Інструмент</b> – msimg32.dll (шкідливий)<br />Поміщений у ту саму директорію для досягнення бокового завантаження DLL.”] class dll_msimg32 tool exec_hijack[“<b>Дія</b> – T1574.008 Викрадення потоку виконання<br />Викрадення порядку пошуку завантажує шкідливий DLL.”] class exec_hijack action script_bat[“<b>Інструмент</b> – document.bat<br />Пакетний скрипт, запущений викраденим виконуваним файлом.”] class script_bat tool docx_7zip[“<b>Інструмент</b> – document.docx (7‑zip архів)<br />Містить вбудоване середовище Python.””” class docx_7zip tool exe_zvchost[“<b>Інструмент</b> – zvchost.exe (перейменований python.exe)<br />Виконує завантажувальний скрипт, закодований у Base64.”] class exe_zvchost tool payload_base64[“<b>Інструмент</b> – Payload у Base64<br />Декодує і готує до виконання фінальний шкідливий компонент.”] class payload_base64 tool registry_run_key[“<b>Інструмент</b> – Ключ запуску реєстру<br />Створений у середовищі Active Setup для досягнення постійності.”] class registry_run_key tool persistence_active_setup[“<b>Дія</b> – T1547.014 Запуск під час завантаження або входу: Active Setup<br />Забезпечує виконання вантажу при кожному вході в систему.”] class persistence_active_setup action defense_obfuscation[“<b>Дія</b> – T1027 Приховані файли або інформація<br />Файли, приховані в глибоких каталогах з підкресленнями і закодовані в Base64.”] class defense_obfuscation action credential_browser[“<b>Дія</b> – T1555.003 Облікові дані з веб-браузерів<br />ValleyRAT витягує збережені імена користувачів, паролі та кукі.”] class credential_browser action malware_valleyrat[“<b>Зловмисне ПЗ</b> – ValleyRAT<br />Інструмент віддаленого доступу, що відкриває TLS C2 канал.”] class malware_valleyrat malware c2_server[“<b>Інструмент</b> – C2 сервер 196.251.86.145<br />Отримує зашифрований трафік від RAT.”] class c2_server tool malware_component[“<b>Зловмисне ПЗ</b> – Додатковий компонент<br />Завантажені бінарні файли, виконані на хості жертви.”] class malware_component malware %% Connections Showing Flow action_phishing u002du002d>|доставляє| file_archive file_archive u002du002d>|містить| exe_foxit exe_foxit u002du002d>|завантажує| dll_msimg32 dll_msimg32 u002du002d>|активує| exec_hijack exec_hijack u002du002d>|тригерить| script_bat script_bat u002du002d>|витягує| docx_7zip docx_7zip u002du002d>|надає| exe_zvchost exe_zvchost u002du002d>|виконує| payload_base64 payload_base64 u002du002d>|створює| registry_run_key registry_run_key u002du002d>|забезпечує| persistence_active_setup payload_base64 u002du002d>|виконує| defense_obfuscation payload_base64 u002du002d>|краде| credential_browser credential_browser u002du002d>|передає| malware_valleyrat malware_valleyrat u002du002d>|встановлює| c2_server malware_valleyrat u002du002d>|завантажує| malware_component
Потік атаки
Виявлення
Виявлення командування та контроль та доставки вантажу кампанії ValleyRAT [користування мережею Windows]
Показати
Кампанія ValleyRAT Використання Foxit PDF Reader для бокового завантаження DLL [створення процесу Windows]
Показати
Індикатори компроментації (SourceIP) для виявлення: Кампанія Malware ValleyRAT Цілі шукачів роботи, зловживає Foxit PDF Reader для бокового завантаження DLL
Показати
Індикатори компроментації (HashSha256) для виявлення: Кампанія Malware ValleyRAT Цілі шукачів роботи, зловживає Foxit PDF Reader для бокового завантаження DLL
Показати
Індикатори компроментації (HashSha1) для виявлення: Кампанія Malware ValleyRAT Цілі шукачів роботи, зловживає Foxit PDF Reader для бокового завантаження DLL
Показати
Моделювання виконання
Передумова: Перевірка телеметрії та базової перевірки повинна бути успішною.
Підстава: Цей розділ детально описує точне виконання техніки супротивника (TTP), призначеної для активації правила виявлення. Команди та наратив ПОВИННІ прямо відображати визначені TTPs і мають генерувати точну телеметрію, очікувану логікою виявлення. Абстрактні або нерелевантні приклади призведуть до неправильної діагностики.
-
Сценарій атаки та команди:
-
Первісний компроміс: Жертва відкриває шкідливий PDF, що стосується рекрутингу, доставлений через електронну пошту. PDF містить JavaScript (T1059.006), що скидає шкідливий DLL (
valley.dll) у ту ж директорію, що й виконуваний файл PDF-читача. -
Бокове завантаження DLL: Зловмисник використовує здібність Foxit Reader завантажувати допоміжні DLL. Розміщуючи
valley.dllпоруч із перейменованим виконуваним файлом Foxit (zvchost.exe), Foxit ненавмисно завантажить шкідливий DLL при запуску, виконуючи ValleyRAT. -
Ініціація створення процесу: Перейменований виконуваний файл (
zvchost.exe) запускається, генеруючи подію створення процесу, де шлях зображення закінчуєтьсяzvchost.exe. Це відповідає умові Sigma ruleImage|endswith, викликаючи оповіщення.
-
-
Сценарій регресійного тестування: Наступний скрипт PowerShell відтворює вищевказані кроки в контрольованому лабораторному середовищі.
# ------------------------------------------------------------ # Сценарій регресійного тестування для виявлення бокового завантаження ValleyRAT # ------------------------------------------------------------ # 1. Налаштування тимчасової робочої директорії $workDir = "$env:TEMPValleyRAT_Test" New-Item -Path $workDir -ItemType Directory -Force | Out-Null # 2. Копіювання законного виконуваного файлу Foxit Reader (симуляція PDF-читача) $foxitSrc = "C:Program FilesFoxit SoftwareFoxit ReaderFoxitReader.exe" $foxitRenamed = Join-Path $workDir "zvchост.exe" Copy-Item -Path $foxitSrc -Destination $foxitRenamed -Force # 3. Створення підробленого шкідливого DLL (у реальності це був би ValleyRAT payload) $dllPath = Join-Path $workDir "valley.dll" Set-Content -Path $dllPath -Value ([byte[]](0x4D,0x5A)) -Encoding Byte # Мінімальний MZ заголовок # 4. Запуск перейменованого виконуваного файлу Foxit (це запускає бокове завантаження DLL) Write-Host "[*] Запуск перейменованого виконуваного файлу Foxit для активації бокового завантаження..." $proc = Start-Process -FilePath $foxitRenamed -PassThru -WindowStyle Hidden # 5. Коротка пауза, щоб забезпечити логування створення процесу Start-Sleep -Seconds 5 # 6. Вивід інформації про процес для перевірки Write-Host "ID процесу: $($proc.Id)" Write-Host "Шлях виконуваного файлу: $($proc.Path)" # 7. Очистка (необов'язково – див. окремий розділ очищення) # Remove-Item -Recurse -Force $workDir -
Команди очищення: Виконайте після тесту, щоб видалити артефакти та уникнути залишкових бокових завантажених DLL.
# Очистка тестової директорії та завершення будь-яких непотрібних процесів $workDir = "$env:TEMPValleyRAT_Test" # Завершення запущеного процесу, якщо він ще виконується Get-Process -Name "zvchост" -ErrorAction SilentlyContinue | Stop-Process -Force # Видалення тестових артефактів Remove-Item -Path $workDir -Recurse -Force -ErrorAction SilentlyContinue Write-Host "[+] Очистка завершена."