CopperStealer Malware IOCs

Специалисты Trend Micro обнаружили новую версию CopperStealer.

CopperStealer Malware

Cходства с предыдущими версиями:

  • Тот же криптор
  • Использование стандарта шифрования данных (DES) с тем же ключом
  • одинаковое название функции экспорта DLL (для более поздних версий CopperStealer)
  • Передача данных в Telegram-канал (для более поздних версий CopperStealer)
  • Использование исполняемой утилиты MiniThunderPlatform

Файл CopperStealer шифруется и добавляется в легитимное приложение, а точка входа перезаписывается шеллкодом. Этот шеллкод считывает смещение полезной нагрузки и ключ расшифровки XOR из заголовка исполняемого файла.

Ключ шифрования равен 0x001eb1c0, что в десятичной системе равно 2011584. Десятичное значение - это и смещение, и ключ шифрования. Во всех проанализированных образцах используется одна и та же схема. Расшифровка представляет собой функцию XOR с тем же ключом, что и смещение в десятичной системе.

Расшифрованный второй этап представляет собой DLL с упаковкой Ultimate Packer for Executables (UPX) и имеет одну экспортируемую функцию HelloWorld. Важно отметить, что в старых версиях CopperStealer эта функция называлась WorkIn, а в новых версиях уже была HelloWorld.

На втором этапе дроппер, встраивающий два дополнительных исполняемых файла (сжатых с помощью 7-Zip) с внутренними именами A и B. Эти ресурсы сбрасываются под именами "build" и "shrdp" и впоследствии выполняются.

Компонент использует ту же технику шифрования полезной нагрузки и то же имя метода экспорта, что и на первом этапе. Компонент устанавливает сертификат с отпечатком 6c0ce2dd0584c47cac18839f14055f19fa270cdd в папку Certificates текущего пользователя.

Затем CopperStealer извлекает значение "MachineGuid" из <Software\\\Microsoft\\\\Cryptography> и использует это строковое значение в качестве имени каталога, в котором хранит все украденные данные. Затем он ищет и крадет cookies из следующих браузеров:

  • Brave-Browser
  • Chrome
  • Chromium
  • Edge
  • Firefox
  • Opera
  • Яндекс

Куки в браузерах на базе Chromium зашифрованы. Для этого считывается os_crypt и encrypted_key из файла <%APPDATA%\Local\Google\Chrome\User Data\Local State>, расшифровывает ключ и сохраняет его зашифрованное значение. Это зашифрованное значение, которое должно быть закодировано в base64, затем DES-шифровано с ключом "loadfa1d" и IV "unsigned", после чего еще раз закодировано в base64. Затем это зашифрованное и закодированное значение сохраняется в файл с именем <%APPDATA%\Local\Google\Chrome\User Data\History>.

Похититель начинает забирать данные, создает каталоги с метками "browsers" и "cookies" в каталоге с именем MachineGuid и сохраняет похищенные данные в указанных каталогах на основе содержимого файла. Имена файлов, украденных из зараженной системы, могут быть следующими:

  • passwords.txt
  • passwords_urls.txt
  • _cookie.txt
  • cookies_urls.txt
  • CC.txt
  • chrome_autofill.txt
  • _token.txt
  • outlook.txt
  • thunderbird.txt
  • eventlog.txt

Помимо кражи данных веб-браузера, CopperStealer также собирает пользовательские данные с платформ онлайн-мессенджеров Telegram, Discord и Elements, сервиса распространения игр Steam и почтовых клиентов Outlook и Thunderbird. CopperStealer копирует все важные файлы с настройками и конфигурациями и отправляет их обратно на командно-контрольный (C&C) сервер:

  • Telegram: Ищет папку "tdata", в которой хранятся все данные, такие как сессии, сообщения и изображения.
  • Discord: Ищет файл "userDataCache.json".
  • Elements: Ищет каталог "IndexeDB", в котором приложение мессенджера хранит информацию, например, токены доступа.
  • Steam: Ищет файл "config" с настройками в нескольких обсуждаемых здесь местах.

Firefox хранит сохраненные логины в зашифрованном виде в файле logins.json. CopperStealer содержит ресурсную утилиту под названием FFNSS332 для 32-битной системы (или FFNSS364 для 64-битной системы), которая анализирует файл logins.json и выводит результаты на вывод командной строки.

CopperStealer запускает утилиту командной строки Windows Events и перечисляет даты событий 6005 (когда была запущена служба журнала событий) и 6006 (когда служба журнала событий была остановлена), и сохраняет эти результаты в файл eventlog.txt. Весь каталог похищенных файлов сжимается в защищенный паролем архив 7-Zip (в котором 7z.dll и 7z.exe включены в качестве ресурсов), а пароль архива - md5[дублированное имя каталога]. Затем архив загружается в специальный канал Telegram, а сообщение об успешной загрузке отправляется в канал уведомлений.

Как и первый компонент, второй компонент использует то же шифрование полезной нагрузки и то же соглашение об именовании методов экспорта, как было описано в первом разделе.

Компоенет удаленного рабочего столе начинает расшифровку адреса сервера C&C, хранящегося в зашифрованном виде на Pastebin. После декодирования base64, алгоритмом расшифровки является DES с ключами "taskhost" и IV "winlogon". Это точно такие же настройки, как и в нашем предыдущем анализе CopperStealer. После получения адреса C&C компонент регистрирует свой идентификатор машины (под значением "MachineGuid", тот же идентификатор в первом компоненте) и периодически начинает запрашивать задания для выполнения.

Поддерживаются следующие задачи: "install" и "killme". Задача "install" выполняет следующие операции:

  • Добавляет на машину новую учетную запись пользователя, пароль которой совпадает с именем пользователя.
  • Добавляет эту учетную запись в группу администраторов и группу "Пользователи удаленных рабочих столов"
  • Скрывает эту учетную запись с экрана входа в систему, изменяя ключ реестра <\\\Winlogon\\\SpecialAccounts\\\\UserList>
  • Отключает брандмауэр
  • Разрешает подключения к удаленному рабочему столу.
  • Отключает аутентификацию на сетевом уровне
  • Извлекает и устанавливает обертку RDP (названную в ресурсах как "SHRDP"), полученную из проекта rdpwrap, и после установки включает функцию удаленного рабочего стола на хост-системе
  • Извлекает и устанавливает OpenVPN (драйверы и сертификат, OEMVISTAxxx и TAPxxx в ресурсах + OP в ресурсах).
  • Извлекает и устанавливает MiniThunderPlatform (название "THUNDERFW" в ресурсах), еще одну утилиту, которую мы также упоминали в нашем предыдущем анализе CopperStealer
  • Извлекает и устанавливает n2n (в ресурсах называется "EDGE"), инструмент для создания виртуальных сетей (Параметры выполнения "-k", секретный ключ шифрования, "-a", частный IP-адрес, и "-l", IP и порт суперузла, должны быть получены от C&C-сервера).

Задача "killme" убивает запущенные процессы, удаляет файлы и удаляет пользователей, которые были запущены, удалены или добавлены во время задачи "install". Все файлы, связанные с Remote Desktop, также поставляются в ресурсах, и компонент просто извлекает и устанавливает их.

Чтобы Windows Defender не смог обнаружить удаленные файлы, компонент добавляет каталог в список исключений.

Вектор заражения начинается с веб-сайта, предлагающего поддельные крэки. На таких сайтах обычно отображаются две кнопки, одна из которых предлагает скачать, а другая - установить нужные крэки. Выбор любой из этих кнопок запускает цепочку перенаправления, требуя от пользователя выбрать другую кнопку "Загрузить". После этого появляется запрос на загрузку, и пользователю предлагается сохранить файл на компьютере.

Чтобы решения безопасности не смогли сразу обнаружить вредоносные файлы, загруженный архив обычно содержит текстовый файл с паролем и еще один зашифрованный архив. После ввода пароля, указанного в текстовом файле, в расшифрованном архиве отображаются исполняемые файлы.

Indicators of Compromise

Domains

  • productkeycrack.com
  • crackedfine.com
  • cloud23.xyz
  • cloud25.xyz
  • fakeloveinc.com

URLs

  • https://pastebin.com/raw/CF8hK9Rb

SHA256

  • 1a2611d1579a47129483745f1867cee41c87d9394aec2d2c7120717c1e932d8a
  • 1f0b37c31226f2bb50c61bc028248963df6a7ec4124d55d7e9bcafa3e0d24cf7
  • 281d3a8cb18df039b0f94ecd86b7bfc6226f582c0ca529e0fa0eed24e875e676
  • 2a4ce819f0b77536614b510686365eaaf3505a084e52be940fb01e89e83b3716
  • 3770ca41453a14f0c7f256618bae59f7bef2e7a8481ab3959865a1f5164abb9b
  • 416c1bfe526401775cb7ba3d72dcf3b8f076e2be32fb3590004ce21d1e72efe9
  • 5ece82f9bfb5f65c82e954ec7375479f4fd81cc743ce561c21eff045726f6e61
  • 63f6ac5da32d2b58776f43bfa494c5d851210d61a53b4df313e808ba40ce71e8
  • 67c7123df075ad1cc57add82757871572a7242e6d05b1c6797c9fddd6fc2e851
  • 6f1d27239e189ae0d759ad1ad82a72acf3bd531d4686f9f2afe0a13305fb5b81
  • a23737d387313b4a1f68967af10b1e38169681cce6214f0a96b0ad6ecaab360d
  • b5cd2873be627097f77fe8821914af16f4a748dc52d66e709f5b54d5c9ff9b41
  • bbbc5ac3a559feeb1b095d187f5efeb3969a03b5f5f3eccfe9006b5baaac7c56
  • be456eba2a81ff1bf02f2509a7d43b6b950d3a5bbc129f920361077a4df754c1
  • d2632e36aeaa4204b4717fef742288773318674b1c692ae901289bdfd12ff053
  • d2effe218ef9e9717c897494a8be0f217dd14dbd7f70b24d407a94bd86c1eb79
  • e69026db820b4aecb17d98bf3cb9f40b78758232a5b45b5b7ba84850bd9f9ec5
  • ed4439c85248c5b0c11a9c32cf693c47d18ff25f8e199a89496a15ede73689c1
Добавить комментарий