Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Ворок: Велика картина

Ця нова група кібершпигунства, зосереджена переважно на Азії, використовує незадокументовані інструменти, зокрема стеганографічне вилучення корисних даних PowerShell із файлів PNG

Дослідники ESET нещодавно виявили цілеспрямовані атаки, які використовували незадокументовані інструменти проти різних відомих компаній і місцевих органів влади переважно в Азії. Ці атаки були здійснені раніше невідомою шпигунською групою, яку ми назвали Worok і яка була активна принаймні з 2020 року. Набір інструментів Worok включає завантажувач C++ CLRLoad, бекдор PowerShell PowHeartBeat і завантажувач C# PNGLoad, який використовує стеганографію для вилучення прихованих шкідливих програм. корисні навантаження з файлів PNG.

Хто такий Ворок?

Під час ProxyShell (CVE-2021-34523) ми спостерігали розкриття вразливості на початку 2021 року діяльність різних груп APT. Одна демонструє характеристики, спільні з TA428:

  • Час активності
  • Цільові вертикалі
  • Використання ShadowPad

Інший набір інструментів сильно відрізняється: наприклад, TA428 брав участь у Здатний компроміс робочого столу у 2020 році. Ми вважаємо, що зв’язки недостатньо сильні, щоб вважати Worok тією ж групою, що й TA428, але ці дві групи можуть ділитися інструментами та мати спільні інтереси. Ми вирішили створити кластер і назвали його Worok. Ім’я було вибрано після м’ютексу в завантажувачі, який використовується групою. Подальша діяльність із варіантами тих самих інструментів була потім пов’язана з цією групою. Згідно з даними телеметрії ESET, Worok був активний з кінця 2020 року і продовжує бути активним на момент написання цієї статті.

Ще наприкінці 2020 року Worok націлився на уряди та компанії в багатьох країнах, зокрема:

  • Телекомунікаційна компанія у Східній Азії
  • Банк в Центральній Азії
  • Компанія морської галузі в Південно-Східній Азії
  • Державна установа на Близькому Сході
  • Приватна компанія на півдні Африки

З 2021-05 по 2022-01 була значна перерва в спостережуваних операціях, але активність Worok повернулася в 2022-02, спрямована на:

  • Енергетична компанія в Центральній Азії
  • Організація державного сектору в Південно-Східній Азії

На малюнку 1 представлено візуальну теплову карту цільових регіонів і вертикалей.

Рисунок 1. Карта цільових регіонів і вертикалей

Враховуючи профілі цілей та інструменти, які ми бачили проти цих жертв, ми вважаємо, що головна мета Worok — викрасти інформацію.

Технічний аналіз

Хоча більшість початкових доступів невідомі, у деяких випадках протягом 2021 і 2022 років ми спостерігали використання експлойтів проти вразливостей ProxyShell. У таких випадках зазвичай веб-оболонки завантажуються після використання цих вразливостей, щоб забезпечити постійність у мережі жертви. Потім оператори використовували різні імплантати, щоб отримати додаткові можливості.

Після отримання доступу оператори розгорнули численні загальнодоступні інструменти для розвідки, у тому числі Мімікац, Дощовий черв'як, ReGeorg та NBTscan, а потім розгорнули свої власні імплантати: завантажувач першого етапу, а потім другий етап завантажувача .NET (PNGLoad). На жаль, ми не можемо отримати жодного з остаточних корисних навантажень. У 2021 році завантажувачем першого етапу була збірка CLR (CLRLoad), тоді як у 2022 році її було замінено, у більшості випадків, повнофункціональним бекдором PowerShell (PowHeartBeat) – обидва ланцюжки виконання зображено на малюнку 2. Ці три компоненти інструменти детально описані в наступних підрозділах.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Рисунок 2. Компромісні ланцюги Worok

CLRLoad: завантажувач збірки CLR

CLRLoad — це загальний Windows PE, який ми бачили як у 32-, так і в 64-розрядних версіях. Це завантажувач, написаний мовою C++, який завантажує наступний етап (PNGLoad), який має бути a Складання Common Language Runtime (CLR). DLL файл. Цей код завантажується з файлу, розташованого на диску в законному каталозі, ймовірно, щоб ввести в оману жертв або служб реагування на інциденти, щоб вони подумали, що це законне програмне забезпечення.

Деякі зразки CLRLoad починаються з декодування повного шляху до файлу, вміст якого вони завантажуватимуть на наступному етапі. Ці шляхи до файлів кодуються за допомогою однобайтового XOR, з різними ключами в кожному зразку. Розшифровані або відкритий текст, ці шляхи до файлів є абсолютними, а з нами зустрічаються наступні:

  • C:Program FilesVMwareVMware ToolsVMware VGAuthxsec_1_5.dll
  • C:Program FilesUltraViewermsvbvm80.dll
  • C:Програмні файлиInternet ExplorerJsprofile.dll
  • C:Program FilesWinRarRarExtMgt.dll
  • C:Програмні файли (x86)Foxit SoftwareFoxit Readerlucenelib.dll

Далі створюється м’ютекс, і ми бачили різні назви в кожному зразку. Завантажувач перевіряє цей м'ютекс; якщо знайдено, він виходить, оскільки завантажувач уже запущено. В одному із зразків м'ютекс Wo0r0KGWhYGO було виявлено, що дало групі назву Worok.

Потім CLRLoad завантажує збірку CLR із можливо декодованого шляху до файлу. Як некерований код, CLRLoad досягає цього за допомогою CorBindToRuntimeEx Виклики Windows API у 32-розрядних варіантах або CLRCreateInstance виклики в 64-розрядних варіантах.

PowHeartBeat: бекдор PowerShell

PowHeartBeat — це повнофункціональний бекдор, написаний на PowerShell, обфускований за допомогою різних методів, таких як стиснення, кодування та шифрування. На основі даних телеметрії ESET ми вважаємо, що PowHeartBeat замінив CLRLoad у останніх кампаніях Worok як інструмент, який використовувався для запуску PNGLoad.

Перший рівень бекдор-коду складається з кількох фрагментів коду PowerShell у кодуванні base64. Після того, як корисне навантаження реконструйовано, воно виконується через IEX. Після декодування виконується інший рівень обфусцованого коду, який ми можемо бачити на малюнку 3.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Рисунок 3. Уривок розшифрованої основної функції другого рівня PowHeartBeat

Другий рівень бекдору first base64 декодує наступний рівень свого коду, який потім розшифровується за допомогою Потрійний DES (режим CBC). Після дешифрування цей код розпаковується за допомогою gzip алгоритм, таким чином даючи третій рівень коду PowerShell, який є фактичним бекдором. Він розділений на дві основні частини: налаштування та обробка бекдор-команд.

Основний рівень бекдор-коду також написаний у PowerShell і використовує HTTP або ICMP для зв’язку з сервером C&C. Він працює, як показано на малюнку 4.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Рисунок 4. Функціонування PowHeartBeat

конфігурація

Конфігурація містить кілька полів, у тому числі номер версії, додаткову конфігурацію проксі та адресу C&C. Таблиця 1 описує значення полів конфігурації в різних версіях, які ми спостерігали.

Таблиця 1. Значення полів конфігурації

Назва поля Опис
нос / ikuyrtydyfg
(інші зразки)
Невикористаний.
ClientId Ідентифікатор клієнта, який використовується для таких цілей:
· Як значення при побудові Заголовок файлу cookie для зв'язку C&C.
· Як криптографічний артефакт для шифрування надісланих даних.
версія Номер версії PowHeartBeat.
ExecTimes Кількість дозволених спроб виконання під час видачі a RunCmd (виконання команди) команда.
UserAgent Агент користувача, який використовується для комунікацій C&C.
Referer Referer заголовок, який використовується для зв'язку C&C.
AcceptEncoding Невикористаний.
CookieClientId
CookieTaskId
CookieTerminalId
Значення, які використовуються для побудови Печиво заголовок для комунікацій C&C.
UrlHttps Протокол для зв'язку C&C.
UrlDomain
IP-адреса
Домени
URL-адреса, домен(и) або IP-адреса, які використовуються як сервер C&C. Якщо Домени не є порожнім, його вибирають замість IP-адреса. В інших випадках IP-адреса .
UrlSendHeartBeat URL-шлях, який використовується, коли бекдор запитує команди в C&C-сервера.
UrlSendResult URL-шлях, який використовується, коли бекдор надсилає результати команди назад на сервер C&C.
GetUrl Повна URL-адреса, яка використовується PowHeartBeat для запиту команд від C&C сервера. Це конкатенація наведених вище елементів URL.
PutUrl Такий же, як GetUrl але використовується для надсилання результатів команди назад на C&C сервер.
поточний шлях Невикористаний.
ProxyEnableFlag Прапорець, що вказує, чи повинен бекдор використовувати проксі-сервер, чи ні, щоб спілкуватися з сервером C&C.
Proxymsg Адреса проксі для використання if ProxyEnableFlag встановлений в $true.
Інтервал Час у секундах, протягом якого сценарій перебуває в режимі сну між запитами GET.
BasicConfigPath Шлях до додаткового файлу конфігурації, що містить Час роботи, Час простою, DefaultInterval та Домени. Ці значення буде замінено, якщо файл присутній.
Час роботи Час доби, з якого бекдор починає працювати, тобто він починає надсилати запити GET до C&C-сервера.
Час простою Час доби, до якого бекдор може працювати, тобто час, коли він припиняє надсилати запити до C&C сервера.
DomainIndex Індекс поточного доменного імені для зв’язку з сервером C&C. Якщо запит повертає повідомлення про помилку, відмінне від 304 («Не змінено»), DomainIndex збільшується.
SecretKey Ключ, який використовується для розшифровки/шифрування конфігурації. Конфігурація зашифрована за допомогою багатобайтового XOR.
IfLog Невикористаний.
IfLogFilePath Прапорець, який вказує, чи ввімкнено журналювання.
logpath Шлях до файлу журналу.
ProxyFile Шлях до файлу додаткової конфігурації проксі. Якщо він порожній або не знайдений у файловій системі, бекдор отримує налаштування проксі користувача зі значення реєстру HKCUSoftwareMicrosoftWindowsCurrentVersionInternet SettingsProxyServer .
IfConfig Прапорець, що вказує, чи використовувати файл конфігурації.

На малюнку 5 показано приклад конфігурації, отриманої із зразка PowHeartBeat (SHA-1: 757ABA12D04FD1167528FDD107A441D11CD8C427).

Малюнок 5. Приклад конфігурації

Шифрування даних

PowHeartBeat шифрує журнали та додатковий вміст конфігураційного файлу.

Вміст файлу журналу зашифровано за допомогою багатобайтового XOR з ключем, указаним у відкритому тексті у зразку. Цікаво, clientId використовується як сіль для індексу в масиві ключів. Ключ — це 256-байтовий масив, який був ідентичним у кожному зразку, з яким ми стикалися. Додатковий вміст конфігураційного файлу шифрується за допомогою багатобайтового XOR зі значенням from SecretKey як його ключ.

C&C комунікації

PowHeartBeat використовував HTTP для зв’язку C&C до версії 2.4, а потім перейшов на ICMP. В обох випадках повідомлення не шифрується.

HTTP

У нескінченному циклі бекдор надсилає запит GET до C&C-сервера з проханням видати команду. Зашифрована відповідь розшифровується бекдором, який обробляє команду та записує вихідні дані команди у файл, вміст якого потім надсилається на сервер C&C через запит POST.

Формат запитів GET такий:

Зверніть увагу, що запит створюється з використанням однойменних полів конфігурації.

У відповіді від C&C-сервера третій байт вмісту є ідентифікатором команди, який вказує на команду, яку має обробити бекдор. Ми назвемо це command_id. Залишок вмісту відповіді буде передано як аргумент команди, яка обробляється. Цей вміст зашифровано за допомогою алгоритму, показаного на малюнку 6, taskId є значенням файлу cookie, названого на честь CookieTaskIdзначення з конфігурації.

Рисунок 6. Алгоритм шифрування даних запитів

Відповідь від C&C-сервера також містить ще один файл cookie, ім’я якого визначається бекдором CookieTerminalId змінна конфігурації. Значення цього файлу cookie повторюється в запиті POST із бекдору, і воно не повинно бути порожнім. Після виконання команди бекдора PowHeartBeat надсилає результат у вигляді запиту POST на C&C сервер. Результат надсилається у вигляді файлу з назвою .png.

ICMP

Починаючи з версії 2.4 PowHeartBeat, HTTP було замінено на ICMP, надіслані пакети мали час очікування шість секунд і нефрагментовані. Спілкування через ICMP, швидше за все, є способом уникнути виявлення.

У версіях 2.4 і пізніших суттєвих змін немає, але ми помітили деякі зміни в коді:

  • PowHeartBeat надсилає пакет пульсу в кожному циклі, який містить рядок АБВГДЕЖЗІКЛМНОПРСТУФХЧШЕЮЯ, перш ніж запитувати команду. Це інформує C&C сервер, що бекдор готовий приймати команди.
  • Запити на отримання команд, які виконує бекдор, містять рядок abcdefghijklmnop.

Пакети Heartbeat мають формат, описаний на малюнку 7.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Малюнок 7. Макет пакета Heartbeat

Різниця між ідентифікатор клієнта та прапор клієнта в тому, що ідентифікатор клієнта відрізняється в кожному зразку, тоді як прапор клієнта є однаковим у кожному зразку, який використовує ICMP. прапор серцебиття вказує на те, що бекдор надсилає серцебиття. Відповідь від C&C сервера має формат, описаний на малюнку 8.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Рисунок 8. Схема відповіді C&C сервера

прапор тут вказує, чи є команда для виконання бекдору. Запити на отримання команд мають формат, описаний на малюнку 9.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Малюнок 9. Макет для запитів на отримання команд

Зауважте, що режим ICMP бекдора дозволяє отримувати необмежену кількість даних, розділених на фрагменти та змінні. довжина даних, Поточна позиція та Загальна довжина використовуються для відстеження переданих даних. Відповіді на ці запити мають формат, описаний на малюнку 10.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Малюнок 10. Розкладка відповідей на запити отримання команд

Як і у відповідях HTTP, ідентифікатором команди є третій байт дані.

Після семи послідовних відповідей ICMP із порожнім або невідповідно відформатованим вмістом передачі між бекдором і сервером C&C вважаються завершеними.

Що стосується запитів на надсилання результату виданої команди на сервер C&C, режим сервера змінено на режим посту, а останній рядок (abcdefghijklmnop) змінюється для даних результату.

Команди з бекдору

PowHeartBeat має різні можливості, включаючи виконання команд/процесів і маніпуляції з файлами. У таблиці 2 перераховані всі команди, які підтримуються різними проаналізованими зразками.

Таблиця 2. Опис команд PowHeartBeat

ІМ'Я Ідентифікатор команди Опис
Cmd 0x02 Виконайте команду PowerShell.
exe 0x04 Виконайте команду як a процес.
FileUpload 0x06 Завантажте файл на жертву. Вміст файлу стиснуто gzip.
FileDownLoad 0x08 Завантажте файл із комп’ютера-жертви та поверніть на сервер C&C шлях до файлу, довжину файлу, час створення, час доступу та вміст файлу.
FileView 0x0A Отримати інформацію про файл певного каталогу, зокрема:
· Імена файлів
· Атрибути файлів
· Час останнього запису
· Вміст файлу
FileDelete 0x0C Видалити файл.
Перейменувати файл 0x0E Перейменувати або перемістити файл.
ChangeDir 0x10 Змінити поточне робоче розташування бекдора.
інформація 0x12 Отримати категорію інформації відповідно до вказаного аргументу:
· "Основна інформація": ClientId, версія, ім'я хоста, IP-адреси, explorer.exe інформацію про версію та розмір, ОС (архітектура та прапорець, що вказує, чи є машина сервером), Інтервал, поточний каталог, інформація про диск (назва, тип, вільне місце та загальний розмір), поточний час
· «Інформація про інтервал часу»: Інтервал і поточний час
· «Інформація про домен»: розшифрований вміст файлу конфігурації
конфиг 0x14 Оновіть вміст файлу конфігурації та перезавантажте конфігурацію.
N / A 0x63 Чорний вихід.

У разі помилок на стороні бекдору, бекдор використовує ідентифікатор певної команди 0x00 у запиті POST до C&C-сервера, таким чином вказуючи на помилку.

Зауважте, що перед надсиланням інформації назад на сервер C&C дані стискаються за допомогою gzip.

PNGLoad: Стеганографічний завантажувач

PNGLoad — це корисне навантаження другого етапу, яке Worok розгортає на скомпрометованих системах і, згідно з телеметрією ESET, завантажується або CLRLoad, або PowHeartBeat. Хоча ми не бачимо жодного коду в PowHeartBeat, який безпосередньо завантажує PNGLoad, бекдор має можливості завантажувати та виконувати додаткові корисні навантаження з C&C-сервера, імовірно, саме так зловмисники розгорнули PNGLoad на системах, скомпрометованих PowHeartBeat. PNGLoad — це завантажувач, який використовує байти з файлів PNG для створення корисного навантаження для виконання. Це 64-розрядний виконуваний файл .NET, обфускований за допомогою Реактор .NET – яке маскується під законне програмне забезпечення. Наприклад, на малюнку 11 показано заголовки CLR зразка, що маскується під WinRAR DLL.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Малюнок 11. Приклад підробленої DLL WinRAR

Після деобфускації присутній лише один клас. У цьому класі є a MainPath атрибут, що містить шлях до каталогу, який бекдор шукає, включаючи його підкаталоги, для файлів з a . Png розширення, як показано на малюнку 12.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Малюнок 12. . Png список файлів

Кожен . Png файл, знайдений за цим пошуком MainPath потім перевіряється на стеганографічно вбудований вміст. Спочатку найменший біт значень R (червоний), G (зелений), B (синій) і A (альфа) кожного пікселя вибирається та збирається в буфер. Якщо перші вісім байтів цього буфера збігаються з магічним числом, зображеним на малюнку 13, а наступне восьмибайтове значення, елемент керування, не є нульовим, файл проходить перевірку стеганографічного вмісту PNGLoad. Для таких файлів обробка продовжується із розшифруванням залишку буфера за допомогою багатобайтового XOR, використовуючи ключ, збережений у PNGLoad SecretKeyBytes атрибут, а потім розшифрований буфер розпаковується gzip. Очікується, що результатом буде сценарій PowerShell, який запускається негайно.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Малюнок 13. Формат буфера, який PNGLoad створює в результаті обробки . Png файли

Цікаво, що операції, які виконує PNGLoad, реєструються у файлі, шлях до якого зберігається у змінній LogFilePath. Операції реєструються, лише якщо присутній файл, шлях до якого вказано внутрішньою змінною IfLogFilePath.

Ми не змогли отримати зразок . Png використовується разом із PNGLoad, але спосіб роботи PNGLoad передбачає, що він має працювати з дійсними файлами PNG. Щоб приховати зловмисне корисне навантаження, Worok використовує об’єкти Bitmap у C#, які лише беруть інформацію про пікселі з файлів, а не метадані файлів. Це означає, що Worok може приховувати свої зловмисні корисні навантаження в дійсних, нешкідливих на вигляд PNG-зображеннях і таким чином ховатися на виду.

Висновок

Worok — це група кібершпигунів, яка розробляє власні інструменти, а також використовує наявні інструменти для компрометації своїх цілей. Ми вважаємо, що оператори прагнуть викрадення інформації у своїх жертв, оскільки вони зосереджуються на високопоставлених організаціях в Азії та Африці, націлюючись на різні сектори, як приватні, так і державні, але з особливим акцентом на державних установах. Час дії та набір інструментів вказують на можливий зв’язок із TA428, але ми робимо цю оцінку з низькою впевненістю. Їх спеціальний набір інструментів включає два завантажувачі – один на C++ і один на C# .NET – і один бекдор PowerShell. Хоча наша видимість обмежена, ми сподіваємося, що пролиття світла на цю групу спонукатиме інших дослідників ділитися інформацією про цю групу.

З будь-якими запитами щодо нашого дослідження, опублікованого на WeLiveSecurity, зв’яжіться з нами за адресою prijetintel@eset.com.

ESET Research тепер також пропонує приватні звіти APT та канали даних. Якщо у вас є запитання щодо цієї послуги, відвідайте ESET Threat Intelligence стр.

МОК

Файли

SHA-1 ім'я файлу Назва ESET Detection коментар
3A47185D0735CDECF4C7C2299EB18401BFB328D5 сценарій PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0003.
27ABB54A858AD1C1FF2863913BDA698D184E180D сценарій PowerShell/PowHeartBeat.A PowHeartBeat 2.4.3.0003.
678A131A9E932B9436241402D9727AA7D06A87E3 сценарій PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0003.
757ABA12D04FD1167528FDD107A441D11CD8C427 сценарій PowerShell/PowHeartBeat.B PowHeartBeat 2.1.3.0003.
54700A48D934676FC698675B4CA5F712C0373188 сценарій PowerShell/PowHeartBeat.A PowHeartBeat 1.1.3.0002.
C2F53C138CB1B87D8FC9253A7088DB30B25389AF сценарій PowerShell/PowHeartBeat.A PowHeartBeat 1.1.3.0002.
C2F1954DE11F72A46A4E823DE767210A3743B205 tmp.ps1 PowerShell/PowHeartBeat.B PowHeartBeat 2.4.3.0004.
CE430A27DF87A6952D732B4562A7C23BEF4602D1 tmp.ps1 PowerShell/PowHeartBeat.A PowHeartBeat 2.1.3.0004.
EDE5AB2B94BA85F28D5EE22656958E4ECD77B6FF сценарій PowerShell/PowHeartBeat.A PowHeartBeat 2.4.3.0003.
4721EEBA13535D1EE98654EFCE6B43B778F13126 vix64.dll MSIL/PNGLoader.A PNGLoader.
728A6CB7A150141B4250659CF853F39BFDB7A46C RarExtMgt.dll MSIL/PNGLoader.A PNGLoader.
864E55749D28036704B6EA66555A86527E02AF4A Jsprofile.dll MSIL/PNGLoader.A PNGLoader.
8DA6387F30C584B5FD3694A99EC066784209CA4C vssxml.dll MSIL/PNGLoader.A PNGLoader.
AA60FB4293530FBFF00D200C0D44EEB1A17B1C76 xsec_1_5.dll MSIL/PNGLoader.A PNGLoader.
B2EAEC695DD8BB518C7E24C4F37A08344D6975BE msvbvm80.dll MSIL/PNGLoader.A PNGLoader.
CDB6B1CAFEE098615508F107814179DEAED1EBCF lucenelib.dll MSIL/PNGLoader.A PNGLoader.
4F9A43E6CF37FF20AE96E564C93898FDA6787F7D vsstrace.dll Win64/CLRLoad.C CLRLload.
F181E87B0CD6AA4575FD51B9F868CA7B27240610 ncrypt.dll Win32/CLRLLoad.A CLRLload.
4CCF0386BDE80C339EFE0CC734CB497E0B08049C ncrypt.dll Win32/CLRLLoad.A CLRLload.
5CFC0D776AF023DCFE8EDED5CADA03C6D7F9C244 wlbsctrl.dll Win64/CLRLoad.E CLRLload.
05F19EBF6D46576144276090CC113C6AB8CCEC08 wlbsctrl.dll Win32/CLRLLoad.A CLRLload.
A5D548543D3C3037DA67DC0DA47214B2C2B15864 secur32.dll Win64/CLRLoad.H CLRLload.
CBF42DCAF579AF7E6055237E524C0F30507090F3 dbghelp.dll Win64/CLRLoad.C CLRLload.

Шляхи до файлів

Деякі з цих MainPath, LogFilePath та IfLogFilePath значення, які ми зустріли у зразках PNGLoad:

MainPath LogFilePath IfLogFilePath
C:Program FilesVMwareVMware Tools C:Program FilesVMwareVMware ToolsVMware VGAuthreadme.txt C:Program FilesVMwareVMware ToolsVMware VGAuthVMWSU_V1_1.dll
C:Program FilesWinRar C:Program FilesWinRarrarinstall.log C:Program FilesWinRardes.dat
C:Program FilesUltraViewer C:Program FilesUltraViewer‌CopyRights.dat C:Program FilesUltraVieweruvcr.dll

мережу

Область IP
ніхто 118.193.78[.]22
ніхто 118.193.78[.]57
літак.реклама подорожей[.]агентство 5.183.101[.]9
central.suhypercloud[.]org 45.77.36[.]243

Мьютекси

У зразках CLRLoad імена м’ютексів, які ми зустріли, такі:

aB82UduGX0EX
ad8TbUIZl5Ga
Mr2PJVxbIBD4
oERiQtKLgPgK
U37uxsCsA4Xm
Wo0r0KGWhYGO
xBUjQR2vxYTz
zYCLBWekRX3t
3c3401ad-e77d-4142-8db5-8eb5483d7e41
9xvzMsaWqxMy

Повний список індикаторів компромісу (IoCs) та зразки можна знайти в наш сховище GitHub.

Методи MITER ATT & CK

Ця таблиця була побудована за допомогою версія 11 рамки MITER ATT & CK.

Тактика ID ІМ'Я Опис
Розвідка T1592.002 Збір інформації про хост-жертву: програмне забезпечення PowHeartBeat збирає explorer.exe інформація.
T1592.001 Збір інформації про хост-жертву: обладнання PowHeartBeat збирає інформацію про диски.
T1590.005 Зберіть інформацію про мережу жертв: IP-адреси PowHeartBeat збирає IP-адреси скомпрометованого комп’ютера.
Розвиток ресурсів T1583.004 Придбати інфраструктуру: сервер Worok використовує власні C&C сервери.
T1588.002 Отримати можливості: Інструмент Worok розгорнув кілька загальнодоступних інструментів на скомпрометованих машинах.
T1583.001 Інфраструктура придбання: домени Worok зареєстрував домени, щоб полегшити комунікацію та постановки C&C.
T1588.005 Отримати можливості: експлойти Worok використав уразливість ProxyShell.
T1587.001 Розвивайте можливості: шкідливі програми Worok розробив власну шкідливу програму: CLRLoad, PNGLoad, PowHeartBeat.
T1587.003 Розвиток можливостей: цифрові сертифікати Worok створив сертифікати Let’s Encrypt SSL, щоб увімкнути взаємну автентифікацію TLS для шкідливих програм.
Виконання T1059.001 Інтерпретатор команд і сценаріїв: PowerShell PowHeartBeat написано в PowerShell.
Наполегливість T1505.003 Компонент програмного забезпечення сервера: Web Shell Worok використовує веб-оболонку ReGeorg.
Ухилення від захисту T1140 Деобфускація/декодування файлів або інформації Worok використовує різні власні схеми на основі XOR для шифрування рядків і журналів у PowHeartBeat, PNGLoad і CLRLoad.
T1036.005 Маскування: Знайдіть відповідне законне ім’я чи місцезнаходження Зразки PNGLoad розгортаються в легітимних каталогах VMWare.
Доступ до облікових даних T1003.001 Дамп облікових даних ОС: пам’ять LSASS Worok використовує Mimikatz для скидання облікових даних із пам’яті LSASS.
Відкриття T1082 Виявлення системної інформації PowHeartBeat збирає інформацію про ОС.
T1083 Виявлення файлів і каталогів PowHeartBeat може виводити список файлів і каталогів.
T1046 Виявлення мережевих служб Ворок використовує NbtScan щоб отримати мережеву інформацію про скомпрометовані машини.
T1124 Виявлення системного часу PowHeartBeat збирає інформацію про час жертви.
COLLECTION T1005 Дані з локальної системи PowHeartBeat збирає дані з локальної системи.
T1560.002 Архів зібраних даних: Архів через бібліотеку PowHeartBeat gzip стискає дані перед надсиланням на сервер C&C.
Управління та контроль T1071.001 Протокол прикладного рівня: веб -протоколи Деякі варіанти PowHeartBeat використовують HTTP як протокол зв’язку з сервером C&C.
T1090.001 Проксі: внутрішній проксі PowHeartBeat обробляє конфігурацію проксі на комп’ютері жертви.
T1001.002 Обфускація даних: стеганографія PNGLoad витягує піксельні значення з . Png файли для реконструкції корисних навантажень.
T1573.002 Зашифрований канал: асиметрична криптографія PowHeartBeat обробляє зв’язок HTTPS із сервером C&C.
T1095 Протокол не прикладного рівня Деякі варіанти PowHeartBeat використовують ICMP як протокол зв’язку з сервером C&C.
T1132.001 Кодування даних: Стандартне кодування Worok використовує кодування XOR у PowHeartBeat і PNGLoad.
T1132.002 Кодування даних: нестандартне кодування Worok використовує алгоритми кодування XOR, які використовують додаткову сіль.
ексфільтраціі T1041 Ексфільтрація по каналу С2 PowHeartBeat використовує свій канал зв’язку C&C для вилучення інформації.

Ворок: велика картина PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Часова мітка:

Більше від Ми живемо безпеки